我用Google搜索并搜索了stackoverflow,以下内容没有帮助
RESTFul service works in IIS Express / VS2013 but not on IIS Server - 运行时的热修复说“更新不适用于您的计算机。”
Different result in IIS express and IIS - 没有运行dotnetnuke或webmatrix
运行Win7Pro,使用IIS7.5安装了VS2013Pro udpate 3,安装了VS14CTP但现在已卸载。
创建一个新项目,选择Web Application,MVC + WebApi,通过nuget安装WebApi 2.2。 不对应用程序进行任何更改,点击F5,应用程序以chrome开头,请参阅默认的ASP.NET站点,其中包含指向home和api的链接。单击Api链接将转到描述可用api调用的帮助页面。
将站点发布到文件系统,创建新的IIS网站,将站点指向已发布的文件夹,将defaultAppPool用户添加到文件夹。从IIS管理器中浏览到站点。站点显示但不显示任何样式。安装站点为machinename:80也尝试了machinename:50102。不使用SSL或任何身份验证。
在Chrome控制台中有3个错误(这在IISExpress中不会发生)
Uncaught SyntaxError: Unexpected token < modernizr:1
Uncaught SyntaxError: Unexpected token < jquery:1
Uncaught SyntaxError: Unexpected token < bootstrap:1
尝试导航到api链接,只刷新页面,不显示帮助页面。
使用fiddler尝试命中IIS Express中的某个服务按预期工作。使用fiddler尝试点击任何服务返回默认主页。
请注意,对代码不做任何更改,只需创建默认的mvc + webapi解决方案。
检查了application_start(),它包含
GlobalConfiguration.Configure(WebApiConfig.Register);
作为第二行。
任何帮助都将不胜感激。
答案 0 :(得分:0)
这基本上归结为您如何创建解决方案。在visual studio 2013 Professional,File-&gt; New Project - &gt; Visual C# - &gt;网络 - &gt; ASP.NET Web应用程序单击确定。在“添加文件夹和核心参考:”下的弹出窗口中,MVC被检查并显示为灰色,您无法取消选择它。选中“Web API”复选框,单击“确定”。在VS工作时一切正常。但是一旦发布为发布。如果需要,将IIS指向已发布的文件夹,导航到页面。页面加载但如上所述有错误。
为避免这种情况,请在创建新项目时不要选中“Web API”复选框。在创建解决方案之后,而不是在创建期间,将Web API添加到解决方案中。
VS版本12.0.31101.0更新4 .NET版本4.5.52747