代码之家  ›  专栏  ›  技术社区  ›  Joel

“WCF入门”MSDN教程问题

  •  0
  • Joel  · 技术社区  · 16 年前

    可能已发现原始问题(如下)的解决方案。我评论说

    <identity> 
        ...
    </identity>
    

    客户端的app.config文件中的标记。但我不确定这是否会导致其他问题,如果会,有人能告诉我吗?


    我一直在跟踪调查 Getting Started tutorial 在MSDN为WCF。

    我正在Vista x64上使用Visual Studio.net 2008。服务程序运行得很好。但是,客户有问题。

    未处理SecurityNegotiationException 与SOAP进行安全协商 http://localhost:8000/ServiceModelSamples/Service/CalculatorService "为目标", ' http://localhost:8000/ServiceModelSamples/Service/CalculatorService "失败了。 有关详细信息,请参阅内部异常。

    “安全支持提供程序接口(SSPI)协商失败。”

    我的代码与示例的代码几乎完全相同。我从来没有真正使用过web服务、WCF或类似的东西。有人知道我该怎么解决这个问题吗?谢谢

    编辑-我忘了提到异常抛出的位置。。。 在客户的主要方法中:

    CalculatorClient client = new CalculatorClient();
    
    double value1 = 100.00;
    double value2 = 15.99;
    double result = client.Add(value1, value2); //This is the line that throws the error
    
    //...
    

    我添加了client.Open();就在客户端初始化之后,因为我搜索了谷歌,有人也遇到了问题,这对他很有帮助,但当我这样做时,同样的异常会在新行中抛出。

    4 回复  |  直到 16 年前
        1
  •  2
  •   SqlRyan    16 年前

    SSPI失败是与Kerberos相关的安全协商失败。您是否在域上,并且您现在可能无法与域控制器通信?或者您目前无法进行身份验证还有其他原因吗?

        2
  •  0
  •   Ciarán Bruen    14 年前

    我也有这个错误。就我而言,这是由 <identity> 在客户端的Web.config文件中。该部分中有一个条目 <userPrincipalName value="xxx@yyy.com" />

        3
  •  0
  •   Ed Lazor    13 年前

    我在学习微软的教程时也遇到了这个错误 http://msdn.microsoft.com/en-us/library/ms734712.aspx

    我的笔记本电脑连接到了一个目前不可用的域。根据我在这里找到的内容,我进入client app.config文件,通过删除userPrincipleName解决了这个问题。

    这:

                <identity>
                    <userPrincipalName value="user@contoso.com" />
                </identity>
    

                <identity>
                </identity>
    

    然后我重新编译了客户端应用程序,一切正常。

        4
  •  0
  •   t0mm13b    12 年前

    [ServiceContract(Namespace = "http://Microsoft.ServiceModel.Samples")]