Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 对WCF服务的连续调用返回“;每个套接字地址(协议/网络地址/端口)通常只允许使用一次127.0.0.1:10111“;_C#_Wcf_Sockets_Membership - Fatal编程技术网

C# 对WCF服务的连续调用返回“;每个套接字地址(协议/网络地址/端口)通常只允许使用一次127.0.0.1:10111“;

C# 对WCF服务的连续调用返回“;每个套接字地址(协议/网络地址/端口)通常只允许使用一次127.0.0.1:10111“;,c#,wcf,sockets,membership,C#,Wcf,Sockets,Membership,我开发了一个小型mashup站点。这个网站是一个完整的社区。 因此,当用户进入Community.aspx页面时,他/她将看到社区成员的加入日期、评论数量、姓名等。以及ofc寻呼。每页大约有15个用户。现在我的问题是,我的网站上有两种类型的用户“传统用户”和“开放ID”用户。Ofc i在Asp中定义了两个角色。Net成员资格,即“OpenIDUser”和“User” 好的 现在,当用户单击Community.aspx时,将创建一个用户列表,并返回前15个。但是对于要创建的用户列表,有许多角色。I

我开发了一个小型mashup站点。这个网站是一个完整的社区。 因此,当用户进入Community.aspx页面时,他/她将看到社区成员的加入日期、评论数量、姓名等。以及ofc寻呼。每页大约有15个用户。现在我的问题是,我的网站上有两种类型的用户“传统用户”和“开放ID”用户。Ofc i在Asp中定义了两个角色。Net成员资格,即“OpenIDUser”和“User”

好的

现在,当用户单击Community.aspx时,将创建一个用户列表,并返回前15个。但是对于要创建的用户列表,有许多
角色。IsUserInRole(“用户名”,“角色名”)
检查哪些用户是哪些用户,因为现在需要按字母顺序对用户列表进行排序。您必须小心所有以
http://identifier.username
或其他。所以我做了很多Asp.Net会员服务调用Membership.GetUser角色等等

现在,这通常不会成为问题,但是我已经将会员服务合并到WCF中。这样做的原因是,在这个社区中,我将有很多子域(每个“站点”有一个子域),我只想为所有站点使用一个数据库 这个

所以我想如果你有500多个会员,不管怎么说都是100%。但是,只要您在WCF中加入.NET成员身份并将每个成员身份转换为WCF方法,无论是什么方法。每次加载页面时,您有500多个WCF调用


我想这就是错误发生的原因。

这不是一个问题,所以这不是一个答案,而是一个评论


您应该考虑将每个子域作为单独的成员资格应用程序。这允许多个站点共享同一成员数据库,但不会干扰彼此的成员。您可以将应用程序名称设置为提供程序配置的一部分

您是否正在关闭客户端?IIRC我也遇到了类似的问题。

我希望整个网站都有signle登录:/所以如果你注册到一个子域名,你应该是所有域名的一部分。但问题是我收到的错误信息。因为我让每个成员类调用一个WCF方法,该方法每次都创建一个通信通道。所以如果您正在共享身份验证,那么为什么要使用web服务?设置相同的应用程序名称和cookie路径将为您提供此功能,而无需在每次实例化后为authYe使用web服务。创建传输后,客户端将立即关闭。我正在使用client.close()这是正确的还是有其他方法?不,听起来不错:(也许你需要重新考虑一下策略:)