我试图使用IIS Express与VS2010托管一个silverlight应用程序。我修改了我的applicationhost。配置文件,以允许修改正确的配置设置。我有以下在我的web.config:

<location path="">
  <system.webServer>
    <security>
      <authentication>
        <anonymousAuthentication enabled="false" />
        <windowsAuthentication enabled="true" />
      </authentication>
    </security>
  </system.webServer>
</location>

我没有被身份验证,我的域服务调用作为用户返回一个空记录。我能够在安装VS2010 SP1 BETA后让它工作,但我试图让它只与IIS Express工作。

如何使Windows身份验证与IIS Express一起工作。是否有我遗漏的配置设置?


当前回答

在做了上面回答的所有事情之后,我发现我不是以管理员的身份运行Visual Studio。以管理员身份运行后,问题解决了。

其他回答

除了这些伟大的答案,在IISExpress开发环境的背景下,为了阻止臭名昭著的“系统”。错误时,您可以简单地确保以下设置在您的applicationhost中到位。配置文件。

<configuration>
    <system.webServer>
        <validation validateIntegratedModeConfiguration="false" />
    </system.webServer>
</configuration>

这将使您在开发和测试期间具有更大的灵活性,但在这样做之前,请确保您理解在生产环境中使用此设置的含义。

有用的帖子:

http://forums.iis.net/post/1873372.aspx http://www.iis.net/learn/application-frameworks/building-and-running-aspnet-applications/aspnet-20-breaking-changes-on-iis

Visual Studio 2010 SP1和2012增加了对IIS Express的支持,无需编辑尖括号。

如果你还没有,右键单击一个web风格的项目,选择“使用IIS Express…”。 完成后,选择web项目并按F4聚焦属性面板。 设置“Windows身份验证”属性为启用,“匿名身份验证”属性为禁用。

我相信这个解决方案比vikomall的选择更好。

选项#1是所有IIS Express站点的全局更改。 选项2将开发难题留在web.config中。 此外,它可能会导致部署到IIS 7.5时出现错误,除非您遵循IIS服务器的applicationHost.config上的“解锁”过程。

上述基于ui的解决方案使用IIS Express的applicationHost中特定于站点的位置元素。配置保持应用程序不变。

更多信息请点击这里: http://msdn.microsoft.com/en-us/magazine/hh288080.aspx

如果这些答案都没有帮助,您可能需要调整项目属性。查看另一个StackOverflow的答案如何做到这一点:

https://stackoverflow.com/a/20857049/56621

同样的注意- VS 2015, . VS \config\applicationhost。配置不可见或不可用。

默认情况下。vs文件夹是隐藏的(至少在我的情况下)。

如果您无法找到.vs文件夹,请执行以下步骤。

右键单击Solution文件夹 选择“属性” 在“属性”部分,单击“隐藏”复选框(默认不选中), 然后点击“应用”按钮 它将显示确认窗口“应用更改到此文件夹,子文件夹和文件”选项选中,点击“确定”。 重复步骤1至5,除了步骤3,这一次您需要取消选中之前选中的“隐藏”选项。

现在应该可以看到。vs文件夹了。

在做了上面回答的所有事情之后,我发现我不是以管理员的身份运行Visual Studio。以管理员身份运行后,问题解决了。