Herramientas de usuario

Herramientas del sitio


highlevel:csharp:mono

¡Esta es una revisión vieja del documento!


Mono

Data Bases

SQLite

Instalando la biblioteca libmono-sqlite podremos tener acceso a las clases para acceder a bases de datos SQLite si en nuestro proyecto referenciamos dicha librería.

Para acceder a una base de datos SQLite debemos crear un objeto SqliteConnection (Mono.Data.Sqlite.SqliteConnection para DB SQLite3 o Mono.Data.SqliteClient.SqliteConnection para DB SQLite) pasándole como connection string una cadena del estilo URI=file:fichero (siendo fichero el nombre del fichero de la DB). Luego todo funciona como el conjunto de clases ADO.NET.

El siguiente código lanza una consulta a la base de datos de SQLite3 localizada en el archivo prueba3.db:

using System.Data;
using Mono.Data.Sqlite;
...
List<Prueba> list = new List<Prueba>();
string connectionString = "URI=file:prueba3.db";
IDbConnection dbcon;
dbcon = (IDbConnection) new SqliteConnection(connectionString);
dbcon.Open();
IDbCommand dbcmd = dbcon.CreateCommand();
string sql = "SELECT * FROM elements";
dbcmd.CommandText = sql;
IDataReader reader = dbcmd.ExecuteReader();
while(reader.Read()) {
	list.Add(new Prueba() {str = reader.GetString (0)});
}
reader.Close();
reader = null;
dbcmd.Dispose();
dbcmd = null;
dbcon.Close();
dbcon = null;

ASP.NET

En apache (mod_mono)

Para que apache ejecute archivos .aspx tenemos que instalar los siguientes paquetes:

sudo apt-get install libapache2-mod-mono
sudo apt-get install mono-apache-server2

Luego activar el módulo mod_mono_auto y desactivar mod_mono:

sudo a2enmod mod_mono_auto
sudo a2dismod mod_mono

Luego abriremos /etc/apache2/mods-available/mod_mono_auto.conf y agregaremos:

MonoServerPath "/usr/bin/mod-mono-server2"

Las webs ASP.NET se agregan como cualquier otro tipo de webs.

XSP2

xsp2 es el nombre del servidor de asp.net especial para mono. Al ejecutar el comando xsp2 se crea un servidor en el puerto 8080 en el directorio donde se ejecute, aunque pueden configurarse sus aplicaciones web (webapp).

MonoDevelop

  • Haciendo sobre un proyecto\solución botón derecho –> Herramientas –> Crear paquete –> Binarios podremos crear un comprimido con elementos que componen la web, sin el código fuente innecesario y con los elementos marcados con la propiedad contenido.
  • :?: No es posible meter código de C# 3 en la carpeta App_Code.
  • Las propiedades de los archivos App.config han de ser definidas como:
    • Acción de construcción: Definición de la aplicación.
    • Copiar al directorio de salida: Copiar siempre.
highlevel/csharp/mono.1248005794.txt.gz · Última modificación: 2020/05/09 09:24 (editor externo)