2016-05-12 11 views
0

私はASP.NET 5 IDで動き回っています。ASP.NET-Identityフレームワーク外のエンティティは機能しません。

これはアイデンティティによって作成された定型コンテキストです:

public class ApplicationDbContext : IdentityDbContext<ApplicationUser> 
{ 
    public DbSet<Transaction> Transactions { get; set; } 

    protected override void OnModelCreating(ModelBuilder builder) 
    { 
     base.OnModelCreating(builder); 
    } 
} 

私はアイデンティティの枠組みの外に存在する追加のエンティティTransactionsを追加しました。

私はサイトを起動すると、すべての認証のものが正常に動作しますが、私はTransactionsを照会しようとすると、私はこのエラーを取得:このエラーにさらに探し

InvalidOperationException: No database providers are configured. Configure a database provider by overriding OnConfiguring in your DbContext class or in the AddDbContext method when setting up services.

を、すべての兆候は、登録を指すように見えますStartup.csのサービス:

public void ConfigureServices(IServiceCollection services) 
{ 
    services.AddEntityFramework() 
     .AddSqlServer() 
     .AddDbContext<ApplicationDbContext>(options => 
      options.UseSqlServer(Configuration["Data:DefaultConnection:ConnectionString"])); 

    services.AddMvc(); 
} 

これにもかかわらず、まだエラーが発生しています。

ありがとうございます!

答えて

0

私はそれが何かばかげたことを知っていた、答えを見つけた。

efコンテキストを使用する場合、新しく導出されると、コンテキストは設定されません。

だから、注入される必要があります:

public class HomeController : Controller 
{ 
    private readonly ApplicationDbContext _appCtx; 

    public HomeController(
     ApplicationDbContext appCtx) 
    { 
     _appCtx = appCtx; 
    } 

    public JsonResult Durr() 
    { 
     return new JsonResult(_appCtx.Users.ToList());  
    } 
} 
関連する問題