1

簡単なことのようですが、方法がわかりません.. EF EDMX モデル、DB ファーストがあります。私たちの DbContext の名前は、MyEntities としましょう。これにより、コンテキストファイルが生成されます

// <auto-generated>
public partial class MyEntities: DbContext
    {
        public MyEntities()
            : base("name=MyEntities")
        {
        }
    }

これは、構成内の接続文字列も「MyEntities」であることを意味します。ここで、名前をより適切な sth に変更します。

更新ダイアログで「Db から更新」と言うと、「エンティティ接続設定を App.config に保存する」というオプションがありますが、そこに表示される名前は「MyEntities」であり、編集できません。EDMX、.tt、その他のファイルのプロパティを確認しましたが、どこにもありません。

ファイルは自動生成されるため、MyEntities.Context.cs で直接編集することはできません。

では、この名前はどこで変更できますか?

4

2 に答える 2

2

MyEntitiesカスタム コンストラクターを使用して部分クラスを追加できます。

public partial class MyEntities : DbContext
{
    public MyEntities(string connectionString) : base(connectionString)
    {
    }
}

これにより、カスタム接続文字列を渡すことができます。

new MyEntities("name=Foo");

このデザイン タイムを実行する場合: Entity Framework モデルのデザイナー画面で、右クリックしてプロパティに移動します。そこから名前を変更できます。

于 2013-05-16T08:24:26.293 に答える
0

接続文字列の名前を次のように変更しweb.configます。app.config

<connectionStrings>
    <add name="HereGoesName" connectionString="Data Source=..."
        providerName="System.Data.SqlClient" />
</connectionStrings>

編集可能なので自由に編集できるはずですapp.config

于 2013-05-16T08:24:40.757 に答える