我看到了很多类似的问题,但答案是一样的。
public class myContext(string connectionName) : base(connectionName)
{
}
问题是他们的所有答案都指定了从.config派生的连接NAME,如:
<connectionStrings>
<add name="connectionName"
connectionString="data source=server\database;initial catalog=catalog;persist security info=True;user id=user;password=password;MultipleActiveResultSets=True;App=EntityFramework"
providerName="System.Data.SqlClient" />
</connectionStrings>
如果我想传递这样的内容怎么办
"Server=127.0.0.1;Database=sampleDB;User Id=foo; Password=bar"
或类似
"Server=127.0.0.1;Port=440;Database=mysqlDB;Uid=root; Pwd=root123;"
答案 0 :(得分:2)
DbContext
的c'tor采用名为nameOrConnectionString
的字符串。
参数:
nameOrConnectionString:
数据库名称或连接字符串。
因此,您可以将两者,名称连接到连接字符串或直接连接字符串。
传递名称:
要将名称传递给DbContext
(例如在您的web.config中),请写下以下内容:
new myContext("name=connectionName")
传递连接字符串:
要传递文字连接字符串,请编写如下内容:
new myContext("Server=127.0.0.1;Database=sampleDB;User Id=foo; Password=bar")