標籤:style blog color 使用 io ar 檔案 資料 art
Visual Studio 2013 EF5實體資料模型 EDMX 使用 T4模板產生後的繼承對象為DbContext,以前的熟悉的ObjectContext對象不見了,當然使用ObjectContext對象不是每個程式員都需要的,解決辦法有兩種:
方法1.開啟Model.Context.cs,添加
public OracleModelEntities(ObjectContext objectContext, bool dbContextOwnsObjectContext)
:base(objectContext, dbContextOwnsObjectContext)
{ }
如下:
using System; using System.Data.Entity; using System.Data.Entity.Infrastructure; using System.Data.Objects; public partial class OracleModelEntities : DbContext { public OracleModelEntities() : base("name=OracleModelEntities") { } public ModelEntities(ObjectContext objectContext, bool dbContextOwnsObjectContext) :base(objectContext, dbContextOwnsObjectContext) { } protected override void OnModelCreating(DbModelBuilder modelBuilder) { throw new UnintentionalCodeFirstException(); }
使用方式如下:
public OracleModelEntities db = new OracleModelEntities(new ObjectContext(EntityConnectionHelper.OracleEntityConnection("OracleModel")), true);
方法2.在設計檢視中開啟EDMX檔案,在屬性面板中將“代碼建置原則”改為“預設”,然後將解決方案管理器中的“.tt”檔案刪除,用滑鼠右擊EDMX,選擇“運行自訂工具”,產生的程式碼父類已經是就是ObjectContext。
Visual Studio 2013 EF5實體資料模型 EDMX 使用 T4模板產生後使用 ObjectContext對象