[WCF]wsDualHttpBinding绑定问题

qq22345111 2011-11-23 09:14:24
System.Configuration.ConfigurationErrorsException: 
无法找到配置绑定扩展“system.serviceModel/bindings/wsDualHttpBinding”。
请验证此绑定扩展是否已在 system.serviceModel/extensions/bindingExtensions 中正确注册以及是否拼写正确。

APP.Config配置
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.web>
<compilation debug="true" />
</system.web>
<system.serviceModel>
<services>
<service name="Wrox.ProCSharp.MessageService">
<host>
<baseAddresses>
<add baseAddress = "http://localhost:8732/Design_Time_Addresses/MessageService/Service1/" />
</baseAddresses>
</host>
<endpoint address ="" binding="wsdualHttpBinding" contract="Wrox.ProCSharp.WCF.IMyMessage">
<identity>
<dns value="localhost"/>
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="True"/>
<serviceDebug includeExceptionDetailInFaults="False" />
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
</configuration>
...全文
157 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq22345111 2011-11-23
  • 打赏
  • 举报
回复
接口定义如下:
namespace Wrox.ProCSharp.WCF
{

public interface IMyMessageCallback
{
[OperationContract(IsOneWay = true)]
void OnCallback(string message);
}

[ServiceContract(CallbackContract = typeof(IMyMessageCallback))]
public interface IMyMessage
{
[OperationContract]
void MessageToServer(string message);
}
}
实现类代码如下:
namespace Wrox.ProCSharp.WCF
{
public class MessageService : IMyMessage
{
public void MessageToServer(string message)
{
Console.WriteLine("message from the client: {0}", message);
IMyMessageCallback callback =
OperationContext.Current.
GetCallbackChannel<IMyMessageCallback>();

callback.OnCallback("message from the server");

Task.Factory.StartNew(new Action<object>(TaskCallback), callback);
// new Thread(ThreadCallback).Start(callback);
}
private void TaskCallback(object callback)
{
IMyMessageCallback messageCallback = callback as IMyMessageCallback;
for (int i = 0; i < 10; i++)
{
messageCallback.OnCallback("message " + i.ToString()+"来源于服务的消息!");
Thread.Sleep(1000);
}
}
}

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧