簡體   English   中英

實體框架和 MS Dynamics CRM 插件

[英]Entity Framework and MS Dynamics CRM Plugin

是否可以在 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 操作時,出現錯誤: The type initializer for 'System.Data.Entity.Migrations.History.HistoryRepository' threw an exception.

我在控制台應用程序中測試了這段代碼,它可以工作。

任何意見或建議將不勝感激。

更新

聯系人是 EF 模型而不是 CRM 實體。

這個問題的解決方案是將數據庫初始化程序設置為空

Database.SetInitializer<Context>(null);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM