Jon*_*ats 6 .net entity-framework connection-string entity-framework-4.1 database-first
当我使用Entity Framework codefirst时,我可以使用以下代码来获取我的数据库连接字符串:
var db = new dbContext();
Console.Writeline(db.Database.Connection.ConnectionString);
Run Code Online (Sandbox Code Playgroud)
但是当我首先执行数据库时,数据库不可用.我如何(从运行时的代码)开始获取实体框架正在使用的数据库连接字符串?
Lad*_*nka 12
代码:
var db = new dbContext();
Console.Writeline(db.Database.Connection.ConnectionString);
Run Code Online (Sandbox Code Playgroud)
始终有效.因此,如果您从数据库创建实体模型并使用DbContext Generator T4模板,您仍然可以使用它.
如果你改为使用ObjectContext API,你必须调用它:
var connection = context.Connection as EntityConnection;
if (connection == null) throw new ...;
var storeConnectionString = connection.StoreConnection.ConnectionString;
Run Code Online (Sandbox Code Playgroud)
...然后可以公开特定的连接字符串属性:
using System.Data.SqlClient;
internal static string GetDatabaseName()
{
using (var _db = new MyProjectEntities())
{
return new SqlConnectionStringBuilder(_db.Database.Connection.ConnectionString).InitialCatalog;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7085 次 |
| 最近记录: |