为什么可以';我使用Asp.Net 5 MVC 6项目中的带有EF 6.1.3的类库

本文关键字:项目 类库 EF MVC Net Asp 为什么 | 更新日期: 2023-09-27 18:28:33

我有一个.net 4.5.1类库,里面有Entity Framework 6.1.3 Database First Model,当我从单元测试项目中测试它时,它运行良好。

但当我尝试从我的ASP.NET 5 MVC 6项目(仅限于dnx451)中使用它时,我总是会收到一个错误:

FileNotFoundException: Couldn't find file EntityFramework.resources.
at System.Reflection.RuntimeAssembly.InternalGetSatelliteAssembly(String name, CultureInfo culture, Version version, Boolean throwOnFileNotFound, StackCrawlMark& stackMark)
at System.Resources.ManifestBasedResourceGroveler.GetSatelliteAssembly(CultureInfo lookForCulture, StackCrawlMark& stackMark)

我认为它一开始是正常的,但后来它停止了工作,我找不到原因。

有人以前见过这个错误,或者知道它是什么吗??

为什么可以';我使用Asp.Net 5 MVC 6项目中的带有EF 6.1.3的类库

好吧,这是一个错误,在这里报告:https://github.com/aspnet/dnx/issues/3047

Joplaal评论道:

这是一个非常重要的问题,因为它防止使用非常流行的库,如DNX项目中的Entity Framework 6,当线程文化不是一成不变的文化。

在我们等待修复的同时,您可以通过将其添加到Startup的Configure方法中来删除任何本地化支持。

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
    //...
    var localizationOptions = new RequestLocalizationOptions()
    {
        SupportedCultures = new List<CultureInfo> { new CultureInfo("") },
        SupportedUICultures = new List<CultureInfo> { new CultureInfo("") }
    };
    var invariantCulture = new RequestCulture(new CultureInfo(""), new CultureInfo(""));
    app.UseRequestLocalization(localizationOptions, invariantCulture);
    //...
}

我在谷歌上搜索得太厉害了,结果我填写了captchas。