我有一个MVC4 Web应用程序,可以使用本地IIS Express Server在Visual Studio 2012上正常运行。当我将应用程序发布到在Windows 2012上运行的IIS 8 Web服务器时,初始登录页面会正确显示。但是,使用远程调试时,我看到当我使用以下行检查凭据时:
if (ModelState.IsValid && WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe))
我收到如下图所示的错误: System.Web.Helpers error http://www.ismlab.usf.edu/capture.jpg
答案 0 :(得分:25)
解决方案 - 复制对本地
的引用答案 1 :(得分:22)
听起来好像MVC尚未安装在服务器上。
答案 2 :(得分:17)
theta
包含在官方Nuget包Microsoft.AspNet.WebPages中。
安装它并更正引用,并将文件复制到bin文件夹。
答案 3 :(得分:14)
我能够通过下载Microsoft Web Platform Installer,搜索MVC并安装“ASP.NET MVC3(Visual Studio 2010)发布的4/11/2011”软件包解决此问题。在安装之前关闭所有Visual Studio实例。
答案 4 :(得分:7)
答案 5 :(得分:6)
只是添加到现有的答案,因为即使我遇到相同的错误,也无法在程序集中找到引用。我将分享对我有帮助的事情:
从Tools-> NuGet包管理器打开包管理器 - >包管理器控制台并输入:
PM> Install-Package microsoft-web-helpers
此System.Web.Helpers将出现在References-> Assemblies下。从那里'复制本地'属性可以更改为True。
答案 6 :(得分:2)
我正在运行VS 2015Preview,可以通过NuGet安装最新版本的MVC来解决问题。
以防任何人仍然遇到这个。
答案 7 :(得分:2)
我添加了#34; Microsoft ASP.NET Razor"使用Manage NuGet Packages。
使用Add References,出于某种原因,我只有System.Web.Helpers 1.0.0和2.0.0 ......但不是3.0.0。
答案 8 :(得分:1)
我在IIS 8中使用WCF服务时遇到了同样的问题。看看这个解决方案Deploying ASP.NET,它对我有用。
答案 9 :(得分:1)
您的 Web.config 文件可能有问题。
打开文件,找到var gulp = require('gulp');
var spawn = require('child_process').spawn;
gulp.task('my-task', function (cb) {
var cmd = spawn('cmd', ['arg1', 'agr2'], {stdio: 'inherit'});
cmd.on('close', function (code) {
console.log('my-task exited with code ' + code);
cb(code);
});
});
标记。
修改MVC的版本。
例如,MVC 3
<runtime></runtime>
答案 10 :(得分:0)
添加正确版本的MVC后,添加了对Microsoft Web Helper的引用,但未添加对System.Web.Helper的引用。手动将其添加到您的参考文献中。