我尝试使用循环使用WCF服务在我的数据库中生成大量用户。 脚本和Web服务在本地运行(Cassini)。
FormWCFClient formClient = new srForm.FormWCFClient();
User user;
int nbUser = 20000;
for (int i = 0; i < nbUser; ++i)
{
user = new User();
user.Email = String.Format("{0}@example.com", i.ToString());
formClient.AddUser(user); // Add the user in DB
}
formClient.Close();
问题是大约3300次调用EndpointNotFoundException被启动时出现以下innerException:“无法连接到远程服务器”。
我需要等待大约20秒才能继续进程而不会出现错误(直到下一个3300次通话范围)。
是代码问题还是服务器限制?
答案 0 :(得分:0)
您可以在服务中创建一个以用户列表作为参数的新操作。然后,您将使用列表调用一次,而不是使用一个用户调用现有操作20000次。它将减少网络负载并简化事务的使用。
如果不可能,请激活WCF tracing并检查呼叫失败时会发生什么。