Estoy intentando conectarme a una base de datos SQL Server Compact Edition desde F # e intento utilizar un proveedor de tipo. Esto está en Visual Studio 11 Beta, así que me doy cuenta de que puede haber un problema por eso, pero creo que es más probable que todavía no tenga el conocimiento.Cómo conectarse a SQL Server Compact Edition 4.0 con un proveedor de tipos en F #?
Sin embargo, me he dado cuenta de que no hay un proveedor de tipos específico CE en Microsoft.FSharp.Data.TypeProviders y no estoy seguro de que una conexión SqlDataConnection regular haga el truco, por lo que ese podría ser el problema.
Sin embargo, cuando trato de crear la conexión, el IDE parece reconocer que estoy tratando de alcanzar una base de datos CE, al menos.
lo tanto, tengo el siguiente código:
type SqlConnection =
Microsoft.FSharp.Data.TypeProviders
.SqlDataConnection<ConnectionString = @"Data Source=C:\\Path\\Database.sdf">
let db = SqlConnection.GetDataContext()
Así que es bastante estándar, más o menos directamente de la nueva añada de LINQ to SQL con el menú de tipo de elemento del proveedor.
La información sobre herramientas que obtengo sobre la cadena de conexión es "Provider 'System.Data.SqlServerCe.3.5' no instalado." Mirar eso parece indicar que es un problema no tener Sql Server CE instalado, pero tengo las bibliotecas, puedo conectarme a la base de datos usando un SqlCEConnection normal y ejecutando SqlCeCommands y demás. Y dado que es 4.0 y no 3.5, no estoy seguro de si está buscando el proveedor equivocado. Creé la base de datos directamente en VS 11 beta, así que pensé que todas las versiones deberían coincidir y demás.
En resumen, me pregunto si estoy haciendo algo mal, o si las bibliotecas del proveedor de tipo beta VS11 aún no son compatibles con CE 4.0, o si hay algo más que deba hacer para que esto ocurra .
Gracias!
No tuve la oportunidad de probar hasta hoy. Eso fue una gran ayuda, ¡así que gracias! También encontré que al menos para el ejemplo simple aquí, no era necesario incluir System.Data.EntityClient. Una sintaxis de consulta más compacta también era simplemente hacer context.Suppliers |> Seq.iter ... etc. – McMuttons