実行時に接続文字列を使用するか、App.config.Howeverから接続文字列を削除してください。エラーが表示されます。実行時の接続文字列の設定 - EFコード
FYI:EF 6 CodeFirst
public class DfDbContext : DbContext
{
public DfDbContext()
: base(GetConnectionString())
{
}
private static string GetConnectionString()
{
SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder();
builder.DataSource = "xxxxx";
builder.InitialCatalog = "xxxx";
builder.UserID = "xxx";
builder.Password = "xxxx";
builder.MultipleActiveResultSets = true;
builder.PersistSecurityInfo = true;
return builder.ConnectionString.ToString();
}
}
エラー
'System.ArgumentExceptionの' のSystem.Data.dllで発生したが、ユーザーコードで処理されなかったタイプの例外
追加情報:サポートされていないキーワード: '初期カタログ'。
代替ソリューションはありますか?
データソースはサーバーの名前です。 InitialCatalogは、そのサーバー上のどのデータベースです。 (SQL Serverの場合) –
ああ、それはおそらくそれです。その接続文字列から、EFはあなたがSQL Serverデータベースと通信していることを知る方法がありません。どのように使用しているデータベースタイプをEFに教えて、接続文字列の解釈方法を知っていますか? –
接続文字列の代わりに開いている接続を渡すとどうなりますか? (いや、私は推測しているが、それは動作するはずのように聞こえる。) –