不使用 app.config 将连接字符串传递给 DBcontext
passing connection string to DBcontext without using app.config
我不熟悉使用 Code First 方法。如果我遗漏了一些非常基本的东西,请原谅。
我需要将连接字符串传递给 DBcontext,但我不能将该连接字符串传递给 app.config,因为我正在调用 class 本身中的一个块,它为我提供了连接字符串。
Class A : Dbcontext , IA
{
class A() : base ()
{
//call to nugget for giving a connection string
var connString=nugget.connString();
this.Database.Connection.ConnectionString = connString;
}
}`
这个方法正确吗?我无法在我的本地系统上测试这个。
或者我应该将 connString 传递给 base
class A() : 基础 (connString)
DbContext class 有一个构造函数,您可以在创建它的新实例时传递连接字符串。这里最好的方法是为您的 Class A 创建一个构造函数,并从外部获取您的连接字符串参数,而不是在您的 class 内部。但是,如果您确定要在 class 中使用连接字符串,至少您应该像这样将其设为可选。
public class MyDbContext : Dbcontext , IA
{
public static readonly _defaultConnString = nugget.connString();
public class MyDbContext() : base(_defaultConnString) { }
public class MyDbContext(string connString) : base(connString) { }
}
我不熟悉使用 Code First 方法。如果我遗漏了一些非常基本的东西,请原谅。
我需要将连接字符串传递给 DBcontext,但我不能将该连接字符串传递给 app.config,因为我正在调用 class 本身中的一个块,它为我提供了连接字符串。
Class A : Dbcontext , IA
{
class A() : base ()
{
//call to nugget for giving a connection string
var connString=nugget.connString();
this.Database.Connection.ConnectionString = connString;
}
}`
这个方法正确吗?我无法在我的本地系统上测试这个。 或者我应该将 connString 传递给 base
class A() : 基础 (connString)
DbContext class 有一个构造函数,您可以在创建它的新实例时传递连接字符串。这里最好的方法是为您的 Class A 创建一个构造函数,并从外部获取您的连接字符串参数,而不是在您的 class 内部。但是,如果您确定要在 class 中使用连接字符串,至少您应该像这样将其设为可选。
public class MyDbContext : Dbcontext , IA
{
public static readonly _defaultConnString = nugget.connString();
public class MyDbContext() : base(_defaultConnString) { }
public class MyDbContext(string connString) : base(connString) { }
}