2011-05-20 137 views
1

我有一个443端口下的notificationService,但是当我尝试将它添加到Windows Phone 7服务引用时,我不能,因此可以链接,我的服务部署在443端口。无法正确添加服务参考

将HTTP请求发送到http://localhost:443/NotificationService.svc时发生错误。这可能是由于在HTTPS情况下服务器证书未使用HTTP.SYS正确配置。这也可能是由于客户端和服务器之间的安全绑定不匹配造成的。 底层连接已关闭:发送时发生意外错误。 握手失败,原因是意外的数据包格式。 如果服务在当前解决方案中定义,请尝试构建解决方案并再次添加服务引用。

<system.serviceModel> 
<serviceHostingEnvironment aspNetCompatibilityEnabled="True" multipleSiteBindingsEnabled="false"/> 
<services> 
    <service name="Project.Services.NotificationService" 
      behaviorConfiguration="notificationservicebehavior"> 
    <endpoint name="basicHttpBinding" 
       contract="Project.Services.INotificationService" 
       address="http://127.0.0.1:443/NotificationService.svc" 
       binding="basicHttpBinding" 
       /> 
    </service> 
</services> 

<behaviors> 
    <serviceBehaviors> 
    <behavior name="notificationservicebehavior"> 
     <serviceMetadata httpGetEnabled="true" httpGetUrl="" /> 
    </behavior> 
    <behavior name=""> 
     <serviceMetadata httpGetEnabled="true" /> 
     <serviceDebug includeExceptionDetailInFaults="false" /> 
    </behavior> 
    </serviceBehaviors> 
</behaviors> 

+2

您需要提供更多信息。 “我不能”没有告诉我们很多。什么步骤失败,错误是什么(如果有的话),到目前为止您尝试过哪些方法以使其发挥作用? – 2011-05-20 14:52:35

回答

3

如果您使用的是自签名证书或一个从任何these authorities你需要在设备上安装这个不是。

只有2周在设备上安装第三方证书的方式既不可以通过当前代码来完成:

通过的Windows®安装证书 InternetExplorer®中
一个证书可以 被张贴在一个网站并通过 设备可访问的URL向用户提供 ,它们可以使用 下载证书。当用户访问页面并点击 证书时,它会在设备上打开。 用户可以检查证书 ,如果他们选择继续 证书安装在 设备上。通过电子邮件
上 的Windows Phone 7支持.CER的证书安装程序,的.p7b, 和.PFX文件

安装证书。通过电子邮件安装 证书时,请确保您的 邮件过滤器不会阻止.cer文件。 通过电子邮件发送的证书 显示为消息附件。当收到一个 证书时,用户可以点击 查看内容,然后点击 安装证书。 通常,当安装证书 证书时,用户提示 提示您输入密码 可以保护证书。

您必须让用户在应用程序使用证书之前执行这些操作之一。

Windows Phone 7 and Certificates_FINAL_121610.pdf