在生成的實體框架的實體文件的默認構造函數是這樣的:實體框架3.5:實體類的變化構造
public ProjectEntities() : base("name=ProjectEntities", "ProjectEntities")
{
this.OnContextCreated();
}
我想將它更改爲:
public ProjectEntities() : base(UtilClass.GetEnvDependantConnectionStringName(), "ProjectEntities")
{
this.OnContextCreated();
}
這是因爲我想爲所有的開發環境和生產環境提供一個不同的連接字符串,並且沒有機會混淆(這是我的自定義方法檢查的)。
我該怎麼做?每次設計器文件重新生成時,該代碼都會被丟棄。
是的,但如何阻止程序員錯誤地調用基礎構造函數? –
你不能,但名稱'私人'應該是一個提示:)。另外我添加了一條評論。由於我也希望能夠使用連接字符串調用構造函數,因此James提出的解決方案將無法工作。 – Halfgaar
謝謝,我遇到了同樣的問題,最後我修改了模板文件(Model.context.tt)中的構造函數代碼,這很容易做到。 –