【发布时间】:2011-02-05 12:09:49
【问题描述】:
我正在尝试使用 wcf 角色将我的应用程序连接到 azure。一切正常,直到我一次调用多个 wcf 方法。我认为这是因为线程。例外是:
http://localhost:57579/Service1.svc 上没有可以接受消息的端点监听。这通常是由不正确的地址或 SOAP 操作引起的。有关详细信息,请参阅 InnerException(如果存在)。
我正在搜索如何向 wcf 服务添加线程,我发现了这个:
[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple)]
或
[ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall]
我试图结合这些属性,但它不起作用:(
这是我的简单代码: 客户:
public MainPage()
{
InitializeComponent();
service = new Service1Client();
service.GetDataCompleted += new EventHandler<GetDataCompletedEventArgs>(getDataCompleted);
service.GetDataAsync(1);
service.GetDataAsync(2);
}
void getDataCompleted(object sender, GetDataCompletedEventArgs e)
{
if (e.Error != null)
{
}
else
{
this.textBlock1.Text = e.Result;
}
}
服务器:
[ServiceBehavior(InstanceContextMode = InstanceContextMode.PerCall, ConcurrencyMode = ConcurrencyMode.Multiple)]
public class Service1 : IService1
{
public string GetData(int value)
{
return string.Format("You entered: {0}", value);
}
}
【问题讨论】:
-
您是否从任一侧收到了 InnerException?我假设这个链接返回 HTTP 500,正文是否有更多详细信息?
-
您的客户端和服务器是否在同一个线程中执行?
标签: c# wcf windows-phone-7 azure