Hace poco estube desarrollando una pequeña aplicación en Mono (Build 1.2.4) el cual trata de conectarse a una base de datos en ASE 15.0(Adaptive Server Enterprise), en base a este codigo pude observar lo siguiente:
|
… … using Mono.Data.SybaseClient; public static void Main( String[] args) |
| nachxs@kimera:~$ mcs r:System.Data.dll -r:Mono.Data.SybaseClient.dll connect.cs |
El detalle es en la cadena de conexión “connectionString”. Por ejemplo, hago lo siguiente:
| string connectionString = “Server=SERVER_BD,5000; Database=demo; User ID=sa; Password=;”; |
Compilo y ejecuto la clase con esta cadena de conexión y me va bien, me muestra la información que necesito. Pero cuando tengo lo siguiente:
| string connectionString = “Server=SERVER_BD,5000; Database=bd$demo; User ID=sa; Password=;”; |
Me compila bien pero a la hora de ejecutar me aparece lo siguiente:
|
Unhandled Exception: System.FormatException: Index (zero based) must be greater than or equal to zero and less than the size of the argument list. at System.String.FormatHelper (System.Text.StringBuilder result, IFormatProvider provider, System.String format, System.Object[] args) [0x00000] at System.String.Format (IFormatProvider provider, System.String format, System.Object[] args) [0x00000] at System.String.Format (System.String format, System.Object[] args) [0x00000] at Mono.Data.SybaseClient.SybaseConnection.ChangeDatabase (System.String database) [0x00000] at (wrapper remoting-invoke-with-check) Mono.Data.SybaseClient.SybaseConnection:ChangeDatabase (string) at Mono.Data.SybaseClient.SybaseConnection.Open () [0x00000] |
Según lo que se puede observar, no se esta realizando la conexión a la base de datos, al parecer por el carácter “$” que coloque en la cadena de conexión (Database). Esto lo publique en la lista de mono solicitando alguna respuesta, quizas alguno de los que lean este post me puedan dar algun alcanze sobre esto.


