我有一个使用IIS的ASP.NET项目。IIS站点配置为使用自定义绑定主机名。项目文件包含以下设置:
...
<UseIISExpress>false</UseIISExpress>
...
<ProjectExtensions>
<VisualStudio>
<FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
<WebProjectProperties>
<UseIIS>True</UseIIS>
<AutoAssignPort>False</AutoAssignPort>
<DevelopmentServerPort>8662</DevelopmentServerPort>
<DevelopmentServerVPath>/</DevelopmentServerVPath>
<IISUrl>http://custom.host.name/</IISUrl>
<NTLMAuthentication>False</NTLMAuthentication>
<UseCustomServer>False</UseCustomServer>
<CustomServerUrl></CustomServerUrl>
<SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
</WebProjectProperties>
</FlavorProperties>
</VisualStudio>
</ProjectExtensions>
...
当项目以这样的方式配置时,我可以从http://custom.host.name/
访问站点,并且VS在调试时自动附加到IIS工作进程。
当我重新加载项目时(通过关闭/重新打开解决方案或通过在项目上下文菜单中卸载/重新加载),发生了一些意外的事情。项目加载失败,(load failed)
显示在解决方案资源管理器中项目名称的右侧,并显示带有以下消息的消息框(它也显示在输出窗口中):
The URL 'http://custom.host.name/' for Web project 'Some.Asp.Net.Project'
is configured to use IIS Express as the web server but the URL is currently
configured on the local IIS web server. To open this project, you must use
IIS Manager to remove the bindings using this URL from the local IIS web server.
我已尝试从IIS Express applicationhost.config
文件中删除项目网站配置,但没有帮助。
在将项目映射到默认站点下的IIS应用程序时,我没有遇到此问题。
VS版本是旗舰版2012更新3。
发布于 2014-07-02 18:28:57
解决方法是:删除*.csproj.user
文件!
发布于 2014-10-24 21:19:13
当您使用启用IISexpress (位于%userfile%\iisexpress\ applicationHost.Config中)时,您必须选中“将服务器设置应用于所有用户(存储在项目文件中)”选项,以避免在yourProject.csproj.user中写入您的设置
这样做与编辑您的project.csproj文件和编写<WebProjectProperties> <UseIIS>True</UseIIS> <AutoAssignPort>True</AutoAssignPort> <DevelopmentServerPort>62242</DevelopmentServerPort> <DevelopmentServerVPath>/</DevelopmentServerVPath> <IISUrl>http://localhost:8100/Claims/</IISUrl> <OverrideIISAppRootUrl>True</OverrideIISAppRootUrl> <IISAppRootUrl>http://localhost:8100/Claims/</IISAppRootUrl> <NTLMAuthentication>False</NTLMAuthentication> <UseCustomServer>False</UseCustomServer> <CustomServerUrl></CustomServerUrl> <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile> </WebProjectProperties>
是相同的如果您启用了IISExpress,并且您的applicationHost.config文件不包含与您的项目设置相关的条目,您只需按下按钮“创建虚拟目录”并完成!
希望这能有所帮助
发布于 2016-02-23 09:44:08
在我的例子中,删除*.csproj.user文件工作得很好
https://stackoverflow.com/questions/17657607
复制相似问题