1
是否可以在CRM插件中使用實體框架?實體框架和MS Dynamics CRM插件
這是我的DbContext和DbConfiguration:
[DbConfigurationType(typeof(Config))]
public class Context : DbContext
{
public Context(string nameOrConnectionString)
: base(nameOrConnectionString)
{
Database.SetInitializer<Context>(new DropCreateDatabaseIfModelChanges<Context>());
}
public DbSet<Contact> ContactSet { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<Contact>().Property(i => i.Id).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
}
}
public class Config : DbConfiguration
{
public Config()
{
SetDefaultConnectionFactory(new System.Data.Entity.Infrastructure.SqlConnectionFactory());
SetProviderServices(SqlProviderServices.ProviderInvariantName, SqlProviderServices.Instance);
}
}
的插件,當我嘗試在ContactSet執行CRUD操作,我得到錯誤:
我測試的控制檯應用程序的代碼和它的作品。
任何意見或建議將不勝感激。
更新
聯繫人是EF模型而不是CRM實體。
爲什麼爲什麼爲什麼爲什麼 –
你知道的早期綁定生成可通過SDK?有一個名爲[Early Bound Generator]的免費XrmToolbox工具(https://github.com/daryllabar/DLaB.Xrm.XrmToolBoxTools/wiki/Early-Bound-Generator),它使用SDK的功能來生成早期綁定對象,您可以在您的代碼中使用,它具有一些很棒的功能,可以最大限度地減少您單獨使用SDK功能時可能遇到的痛苦。我強烈推薦它。 – Polshgiant
你想做什麼?你的插件代碼中的數據庫配置是什麼? –