2016-11-25 176 views
2

我試圖在.net核心F#web應用程序中設置數據庫上下文。作爲其中的一部分,我需要轉換以下中F#:無法設置實體框架核心

services.AddDbContext<ApplicationDbContext>(options => 
      options.UseSqlite(Configuration.GetConnectionString("DefaultConnection"))); 

我的F#的版本是:

services.AddDbContext<ApplicationDbContext>(fun (options: DbContextOptionsBuilder) -> 
      options.UseSqlite(this.Configuration.GetConnectionString("DefaultConnection"))) 

不過,我收到以下異常:

No overloads match for method 'AddDbContext'. The available overloads are shown below (or in the Error List window).property Startup.Configuration: IConfigurationRoot 

什麼問題可以解決嗎?

回答

1

問題是我沒有爲ApplicationDbContext添加一個構造函數,它將DbContextOptions作爲參數。更改默認的構造函數

type ApplicationDbContext(options: DbContextOptions<ApplicationDbContext>) = 
     inherit IdentityDbContext<ApplicationUser>(options) 

後,我可以編譯