首页 新闻 赞助 找找看

WCF服务获取数据时超时

0
悬赏园豆:5 [已关闭问题]

数据层有一个方法,根据企业名称查找企业信息

WCF服务调用这个方法返回结果给客户端。

客户端输入企业名称进行查找。

 

问题:

客户端如果输入企业名称为英文时,可以顺利返回结果;如果输入中文,则WCF报错,错误原因为:

发送到 net.tcp://192.168.1.111:8888/ManageServices/EnterpriseService 的请求操作在配置的超时(00:01:00)内未收到回复。分配给该操作的时间可能是更长超时的一部分。这可能由于服务仍在处理操作或服务无法发送回复消息。请考虑增加操作超时(将通道/代理转换为 IContextChannel 并设置 OperationTimeout 属性)并确保服务能够连接到客户端。

通过断点调试发现数据层已经将数据返回到WCF服务层,问题就在WCF服务中。不知道各位有没有类似的问题,还行指教一下

问题补充: 通过对存储过程和数据层方法调试都执行成功。而且输入英文查询可以得到结果,输入中文就不行。
tager的主页 tager | 初学一级 | 园豆:165
提问于:2009-03-10 11:30
< >
分享
其他回答(4)
0

可能在服务端没能执行正确的操作

痴鸟 | 园豆:150 (初学一级) | 2009-03-11 08:33
0

你先检查一下是不是网络的原因,如果不是,你再看看逻辑上是不是处理太慢了。优化一下算法。

木蚂蚁 | 园豆:245 (菜鸟二级) | 2009-03-12 10:01
0

英文查询正常,中文查询不正常,应该不是逻辑上的问题。单步debug一下吧

davin | 园豆:385 (菜鸟二级) | 2009-03-23 11:17
0

可能是序列化问题。可以看看有没有抛出异常等等问题。

凌风 | 园豆:53 (初学一级) | 2012-06-20 22:47
0

在客户端应用程序中配置回调服务实现:[CallbackBehavior(UseSynchronizationContext = false)]

例子:


[CallbackBehavior(UseSynchronizationContext = false)]
public class callbackHandler : IService1Callback
{

#region IService1Callback 成员

public void Equals(double n)
{
Console.WriteLine("偶的回调值是:{0}", n);
}

public void Equaltioan(string result)
{
Console.WriteLine("偶的回调值是:{0}", result);
}

#endregion
}

账号注销 | 园豆:202 (菜鸟二级) | 2014-08-15 13:11
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册