首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >尝试使用终结点时无法加载文件或程序集System.Web.Mvc

尝试使用终结点时无法加载文件或程序集System.Web.Mvc
EN

Stack Overflow用户
提问于 2016-06-08 19:54:17
回答 1查看 580关注 0票数 0

我正在构建一个WebApi端点,并在本地对其进行了测试,运行良好。我已经在服务器上安装了它,并将另一个服务指向它,但当它试图发送请求时,我得到了一个运行时错误。当我检查端点所在的事件查看器时,发现以下错误:

代码语言:javascript
运行
复制
Exception type: InvalidOperationException 
Exception message: The pre-application start initialization method PreAppStart on type Microsoft.Web.Mvc.ViewEngineFix threw an exception with the following error message: Could not load file or assembly 'System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified..
at System.Web.Compilation.BuildManager.InvokePreStartInitMethodsCore(ICollection`1 methods, Func`1 setHostingEnvironmentCultures)
at System.Web.Compilation.BuildManager.InvokePreStartInitMethods(ICollection`1 methods)
at System.Web.Compilation.BuildManager.CallPreStartInitMethods(String preStartInitListPath, Boolean& isRefAssemblyLoaded)
at System.Web.Compilation.BuildManager.ExecutePreAppStart()
at System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException)

Could not load file or assembly 'System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
at Microsoft.Web.Mvc.ViewEngineFix.PreAppStart()

我已经尝试在web.config中更改版本号,甚至尝试创建一个不受nuget管理的引用目录来保存System.Web.Mvc.dll,但也不起作用。

任何帮助都是非常感谢的!

EN

回答 1

Stack Overflow用户

发布于 2016-06-08 21:34:08

所以问题最终是“丢失的”dll丢失了,因为当发布构建发生时没有被复制到bin文件夹中。我发现了与this相关的问题,并使用了答案中的建议。

TLDR;基本上我修复它的方法是手动复制每个dll,因为它说它丢失了,并跟踪您必须移动的dll;在我的例子中,它是4个dll。

在没有抛出相同的" missing“异常后,查看项目引用下拉列表,在属性选项卡中找到写有"Copy Local”的行,并为每个缺少的引用将该行设置为True。

要验证它是否执行了预期的操作,请右键单击该项目,然后单击unload。然后再次右键单击该项目并编辑csproj文件。找到您丢失的引用,并在“提示路径”下确保它有一个<Private>True</Private>字段。重新加载项目,确保其构建,然后再次尝试发布构建,dll现在应该在bin文件夹中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37701772

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档