我在Windows 8.1 x64上将IIS Express与Visual Studio 2013一起用于WebAPI 2应用程序(所有这里都是en-US)。大约一个月前,这种方法运行得很好,但现在我在尝试调试应用程序时遇到错误。
如果我不以管理员身份运行VS(再次,之前不需要这样做),我得到:
A first chance exception of type 'System.UnauthorizedAccessException' occurred in mscorlib.dll
Additional information: Access to the path 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\~AspAccessCheck_c00414062044.tmp' is denied.
此后发生第二个错误,如果我以管理员身份运行VS,则会出现第一个错误:
A first chance exception of type 'System.Globalization.CultureNotFoundException' occurred in mscorlib.dll
Additional information: Culture is not supported.
如果我从WebMatrix 3运行相同的WebAPI应用程序,它运行时没有错误(运行或不运行'作为管理员')。
项目IIS配置设置:
<UseIISExpress>true</UseIISExpress>
<IISExpressSSLPort>46435</IISExpressSSLPort>
<IISExpressAnonymousAuthentication>enabled</IISExpressAnonymousAuthentication>
<IISExpressWindowsAuthentication>disabled</IISExpressWindowsAuthentication>
<IISExpressUseClassicPipelineMode>false</IISExpressUseClassicPipelineMode>
我还在http://localhost:46436上运行了应用程序。
我也觉得非常奇怪的是,项目属性显示“IIS Express”并使用http://localhost:46436/的URL,但在我看到的项目文件中:
<ProjectExtensions>
<VisualStudio>
<FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
<WebProjectProperties>
<UseIIS>True</UseIIS>
<AutoAssignPort>True</AutoAssignPort>
<DevelopmentServerPort>46435</DevelopmentServerPort>
<DevelopmentServerVPath>/</DevelopmentServerVPath>
<IISUrl>http://localhost:46436</IISUrl>
这可能解释了我的访问被拒绝。无论我是否设置,保存并重新设置为使用IIS Express(将其存储给所有用户),<UseIIS>
属性都将设置为true。
答案 0 :(得分:2)
我也遇到过这个问题。完成必须右键单击相关文件夹并为IIS_IUSR帐户添加访问权限。
如果这不会导致严重错误,您还可以通过调试 - &gt;禁用此类问题的中断模式。选项 - &gt;调试并选中启用我的代码(仅管理)
答案 1 :(得分:0)
我通过&#39;管理NuGet套餐更新了所有套餐&#39;控制台,它开始工作。