EF 5 + SQL Server CE 4: How to specify custom location for database file?

前端 未结 4 1507
醉梦人生
醉梦人生 2020-12-15 13:32

I am developing a client system that needs a small local database. I want to avoid installation of SQL Server Express and have decided to go with SQL Server 4.

I use

4条回答
  •  伪装坚强ぢ
    2020-12-15 14:04

    The SqlCeConnection instance is used to connect to Sql Ce database file. If I want to connect to MSSQL database, I will use SqlConnectionStringBuilder and SqlConnection instances to build my DbConnection instance.

    // The ctor for `DbConnection`.
    private MyApplicationDataContext(DbConnection conn) : base(conn, true) {}
    
    public static MyApplicationDataContext CreateInstance()
    {
        var directory = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
        var path = Path.Combine(directory, @"ApplicationName\MyDatabase.sdf");
    
        // Connection string builder for `Sql ce`
        SqlCeConnectionStringBuilder sb = new SqlCeConnectionStringBuilder();
        sb.DataSource = path;
    
        // DbConnection for `Sql ce`
        SqlCeConnection dbConn = new SqlCeConnection(sb.ToString());
        return new MyApplicationDataContext(dbConn);
    }
    

提交回复
热议问题