【发布时间】:2016-02-02 07:18:19
【问题描述】:
[已解决]查看我的答案
我有一个使用 ASP.NET 5 和 EF7 运行的项目。
我的 EF 模型位于类库框架 4.5.1 中。当我尝试与数据交互时,我遇到了这个异常:文件“EntityFramework.Core.resources”丢失。但是当我将 EF 模型放入我的 UI 项目时,它工作正常。 知道发生了什么吗?是否可以将实体框架模型放在专用的类库中? (我一直都是这样做的,但也许这个版本已经改变了)
这是包含我的 EF7 的 DbContext 的类库的 package.config 内容:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="EntityFramework.Commands" version="7.0.0-rc1-final" targetFramework="net451" />
<package id="EntityFramework.Core" version="7.0.0-rc1-final" targetFramework="net451" />
<package id="EntityFramework.MicrosoftSqlServer" version="7.0.0-rc1-final" targetFramework="net451" />
<package id="EntityFramework.MicrosoftSqlServer.Design" version="7.0.0-rc1-final" targetFramework="net451" />
<package id="EntityFramework.Relational" version="7.0.0-rc1-final" targetFramework="net451" />
<package id="EntityFramework.Relational.Design" version="7.0.0-rc1-final" targetFramework="net451" />
<package id="Ix-Async" version="1.2.5" targetFramework="net451" />
<package id="Microsoft.Extensions.Caching.Abstractions" version="1.0.0-rc1-final" targetFramework="net451" />
<package id="Microsoft.Extensions.Caching.Memory" version="1.0.0-rc1-final" targetFramework="net451" />
<package id="Microsoft.Extensions.Configuration" version="1.0.0-rc1-final" targetFramework="net451" />
<package id="Microsoft.Extensions.Configuration.Abstractions" version="1.0.0-rc1-final" targetFramework="net451" />
<package id="Microsoft.Extensions.Configuration.Binder" version="1.0.0-rc1-final" targetFramework="net451" />
<package id="Microsoft.Extensions.DependencyInjection" version="1.0.0-rc1-final" targetFramework="net451" />
<package id="Microsoft.Extensions.DependencyInjection.Abstractions" version="1.0.0-rc1-final" targetFramework="net451" />
<package id="Microsoft.Extensions.Logging" version="1.0.0-rc1-final" targetFramework="net451" />
<package id="Microsoft.Extensions.Logging.Abstractions" version="1.0.0-rc1-final" targetFramework="net451" />
<package id="Microsoft.Extensions.OptionsModel" version="1.0.0-rc1-final" targetFramework="net451" />
<package id="Microsoft.Extensions.Primitives" version="1.0.0-rc1-final" targetFramework="net451" />
<package id="Remotion.Linq" version="2.0.1" targetFramework="net451" />
<package id="System.Collections.Immutable" version="1.1.36" targetFramework="net451" />
<package id="System.Diagnostics.DiagnosticSource" version="4.0.0-beta-23516" targetFramework="net451" />
<package id="System.Diagnostics.Tracing" version="4.0.0" targetFramework="net451" />
<package id="System.Runtime" version="4.0.0" targetFramework="net451" />
<package id="System.Threading" version="4.0.0" targetFramework="net451" />
</packages>
还有 StackTrace:
à System.Reflection.RuntimeAssembly.InternalGetSatelliteAssembly(String name, CultureInfo culture, Version version, Boolean throwOnFileNotFound, StackCrawlMark& stackMark) à System.Resources.ManifestBasedResourceGroveler.GetSatelliteAssembly(CultureInfo lookForCulture, StackCrawlMark& stackMark) à System.Resources.ManifestBasedResourceGroveler.GrovelForResourceSet(CultureInfo culture, Dictionary2 localResourceSets, Boolean tryParents, Boolean createIfNotExists, StackCrawlMark& stackMark)
à System.Resources.ResourceManager.InternalGetResourceSet(CultureInfo requestedCulture, Boolean createIfNotExists, Boolean tryParents, StackCrawlMark& stackMark)
à System.Resources.ResourceManager.InternalGetResourceSet(CultureInfo culture, Boolean createIfNotExists, Boolean tryParents)
à System.Resources.ResourceManager.GetString(String name, CultureInfo culture)
à System.Resources.ResourceManager.GetString(String name)
à Microsoft.Data.Entity.Internal.CoreStrings.GetString(String name, String[] formatterNames)
à Microsoft.Data.Entity.Internal.CoreStrings.LogExceptionDuringQueryIteration(Object newline, Object error)
à Microsoft.Data.Entity.Query.Internal.QueryCompiler.<>c__181.<CompileQuery>b__18_3(Exception e) à Microsoft.Data.Entity.Extensions.Internal.CoreLoggerExtensions.<>c__DisplayClass0_01.b__0(Object _, Exception e)
à Microsoft.Extensions.Logging.Debug.DebugLogger.Log(LogLevel logLevel, Int32 eventId, Object state, Exception exception, Func3 formatter) à Microsoft.Extensions.Logging.Logger.Log(LogLevel logLevel, Int32 eventId, Object state, Exception exception, Func3 formatter)
【问题讨论】:
-
您是否将您的 ui 项目中的包与您的类库中的包进行了比较?
-
是的,我做到了,这些软件包的版本相同。我在 UI 和类库中执行了相同的命令来安装实体框架(我在官方文档中找到了说明,这里:docs.efproject.net/en/latest/platforms/aspnetcore/…)
-
终于找到了,和这个问题有关:github.com/aspnet/dnx/issues/3047
-
为什么这篇文章有
entity-framework-6标签? -
这是一个错误。已修复,谢谢
标签: asp.net entity-framework entity-framework-core