Mono上的MVC 5:无法加载文件或程序集"System.Web.Entity"或其依赖项之一

jef*_*her 37 c# asp.net asp.net-mvc mono xamarin

目标:通过Xamarain Studio在Mono上启动ASP.NET MVC 5项目.

启动服务器后出错: Could not load file or assembly 'System.Web.Entity' or one of its dependencies.

在此输入图像描述

Xamarin Studio出错:

在此输入图像描述

背景:该项目是在Visual Studio 2013中创建的默认Web项目.大多数配置都是开箱即用的.它的代码可以在GitHub上查看.我写了最新最好的Mono和Xamarin Studio..NET实体框架是一个已解析的依赖项,Xamarin Studio中没有注明构建问题.

如何启动并运行此项目?我该如何解决这种依赖?

小智 14

我知道这是一个旧线程,但是当我开始将一个MVC项目从VS for Windows移植到VS for Mac时,我遇到了这个问题.我发现一个更好的解决方案是删除对System.Web.Entity的引用,并添加NuGet包System.Web.Http.Common.希望能帮助到你.

  • 添加 NuGet 包 System.Web.Http.Common 时出现错误。因此,我最终删除了对 System.Web.Entity 的引用,而没有添加任何内容来替换它。 (3认同)

jon*_*bot 7

我能够通过System.Web.Entity.dll从Windows框中获取文件来解决此问题.我找到了我的C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5.1\.

一旦我将它复制到bin我的Mac上的项目文件夹,并更新了参考,包括HintPath...

<Reference Include="System.Web.Entity" >
  <HintPath>..\bin\System.Web.Entity.dll</HintPath>
</Reference>
Run Code Online (Sandbox Code Playgroud)

该项目将在Xamarin Studio中构建.它仍然显示引用旁边的红色X(是的,即使我指定它是本地副本并添加了一个HintPath),但至少它可以找到它.

我最终得到了另一个关于无法加载的错误System.Drawing.BitmapSuffixInSameAssemblyAttribute,但是嘿,小进展!


小智 -1

EntityFramework.dll 是否已复制到您的 bin 中?在 Visual Studio 中你可以执行以下操作 在此输入图像描述