2015-12-08 93 views
0

我有一個DNX單元測試程序集,用於測試使用EF7的代碼。如何正確初始化xunit測試EF7使用xunit.runner.dnx運行

在一個web應用程序,我有Startup類在那裏我可以提供一個ConfigureServices(IServiceCollection services)方法和初始化像這樣:

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

哪裏是相當於「鉤」的DNX下運行的xUnit的測試?

回答

1

Xunit的DNX運行程序從不調用Startup.cs。你正在尋找的「鉤子」是一個類夾具或你的測試類的構造函數。 (請參閱https://xunit.github.io/docs/shared-context.html

如何選擇初始化EF由您決定。您可以使用依賴注入並遵循上面的.AddDbContext()模式,或者您可以直接初始化您的DbContext。 (見https://github.com/aspnet/EntityFramework/wiki/Configuring-a-DbContext這是有點過時)

+0

謝謝奈特。仔細閱讀資料來源,這是我一直以來的結論。這是我提出的關於ASP.NET 5,EF7和DI以及這兩者中的初始化的3個問題系列中的第二個。第一個問題:http://stackoverflow.com/questions/34028008/how-does-ef7-bootstrap-dependency-injection-iservicecollection-if-youre-not-i,以及第二個第三個問題,實際上我在哪裏在這個過程中:http://stackoverflow.com/questions/34167161/default-service-creation-for-asp-net-5-serviceprovider – MikeJansen

相關問題