sql >> Databasteknik >  >> RDS >> Sqlserver

Kan inte få sql server compact 3.5/4 att fungera med ASP .NET MVC 2

SQL CE 3.5 fungerar inte med ASP.NET, du måste använda 4.0 CTP.

Ladda ner från här .

Installera runtime.

Kopiera följande kataloginnehåll (inklusive mapparna x86 och amd64) till bin-mappen i din ASP.NET-app:C:\Program Files\Microsoft SQL Server Compact Edition\v4.0\Private

UPPDATERING:Använd System.Data.SqlServerCe.dll från Desktop-mappen för att undvika Medium Trust-problem

myapp\bin\ 
 System.Data.SqlServerCe.dll 

myapp\bin\x86 
 sqlceca40.dll 
 sqlcecompact40.dll 
 sqlceer40EN.dll 
 sqlceme40.dll 
 sqlceqp40.dll 
 sqlcese40.dll 

myapp\bin\amd64 
 sqlceca40.dll 
 sqlcecompact40.dll 
 sqlceer40EN.dll 
 sqlceme40.dll 
 sqlceqp40.dll 
 sqlcese40.dll 

Lägg till en referens till filen System.Data.SqlServerCe.dll som du precis lade i din /bin-mapp.

Placera SQL Compact sdf-filen i mappen App_Data.

Lägg till anslutningssträng:

<connectionStrings>
   <add name ="NorthWind"
   connectionString="data source=|DataDirectory|\Nw40.sdf" />
</connectionStrings>

Ansluta! :-)

using System.Data.SqlServerCe;

    protected void Page_Load(object sender, EventArgs e)
    {
        using (SqlCeConnection conn = new SqlCeConnection())
        {
            conn.ConnectionString = ConfigurationManager.ConnectionStrings["Northwind"].ConnectionString;
            conn.Open();
            using (SqlCeCommand cmd = new SqlCeCommand("SELECT TOP (1) [Category Name] FROM Categories", conn))
            {
                string valueFromDb = (string)cmd.ExecuteScalar();
                Response.Write(string.Format("{0} Time {1}", valueFromDb, DateTime.Now.ToLongTimeString()));
            }
        }
    }


  1. PSQLEundantag:denna resultatuppsättning är stängd

  2. BESTÄLL MED samma värde i MySQL

  3. Konvertera ett datum till en annan tidszon i SQL Server

  4. Mysql-funktionen MBRContains är inte korrekt