C# 在Visual Studio中使用Windows身份验证服务进行客户端开发
我在服务器上托管了一个服务。服务身份验证正在使用Windows身份验证。我想在VisualStudio2010的网站开发中使用此服务。当我尝试添加引用时,它会显示以下错误C# 在Visual Studio中使用Windows身份验证服务进行客户端开发,c#,asp.net,.net,wcf,windows-authentication,C#,Asp.net,.net,Wcf,Windows Authentication,我在服务器上托管了一个服务。服务身份验证正在使用Windows身份验证。我想在VisualStudio2010的网站开发中使用此服务。当我尝试添加引用时,它会显示以下错误 “Security settings for this service require Windows Authentication but it is not enabled for the IIS application that hosts this service.” 我应该做些什么来克服它,并能够使用服务进行开发
“Security settings for this service require Windows Authentication but it is not enabled for the IIS application that hosts this service.”
我应该做些什么来克服它,并能够使用服务进行开发
注意:错误消息很明显。我正在寻找的是克服这一问题的最佳方法
注意:当我在Mozilla Firefox中键入服务地址时,它会询问我的windows凭据-输入凭据时,它会给出服务描述。问题是当我通过VisualStudio使用它时
如果我理解正确,您的服务已经在愉快地运行并使用Windows身份验证,因此它要求呼叫应用程序、您的网站也使用Windows身份验证 当您尝试添加引用时,VS将使用项目属性中定义的任何web服务器在后台启动您的站点。您说您正在使用内置web服务器(也称为Cassini或Webdev)启动站点。您需要确保您的站点正在使用Windows身份验证。您可以从服务的项目属性(右键单击根文件夹并选择属性)执行此操作。在那里,您将看到一个Web选项卡,其中有一个NTLM身份验证复选框-请确保选中该复选框 此外,请确保您使用:
<system.web>
<authentication mode="Windows">
...
安装IIS并定义应用程序根目录并将目录指向本地源文件夹后,请为该web应用程序/站点启用Windows(NTLM)身份验证。如何执行此操作取决于正在运行的IIS版本,但通常是通过单击“身份验证”图标。您可能需要禁用匿名以及启用Windows身份验证,以便所有请求都强制进入Windows身份验证。对于不支持自动NTLM身份验证的浏览器,我还启用了基本表单身份验证
一旦定义了IIS应用程序,就可以使用它从VisualStudio而不是内置web服务器进行调试。通过选择“使用本地IIS服务器”并选择上面创建的IIS站点的Url,也可以从项目属性中执行此操作。或者,如果IIS站点定义尚不存在,VS可以为您创建该定义
上述任何一种方法都应该确保当VS启动您的站点以添加引用时,它将使用身份验证,以及在运行时使用身份验证。请注意,您可以手动添加引用,而无需启动站点。然后,您只需确保在运行时具有Windows身份验证,如上所述。是否通过IIS或内置Web服务器进行测试?如果已安装,它是在Windows 7中的“控制面板>打开或关闭Windows功能>Internet信息服务”中启用的。我建议IIS Express:@jao我可以在我的控制面板中看到IIS 7.5 Express。现在我该怎么解决我的问题呢?