小编Son*_*dor的帖子

拨打许多网络服务的最佳方式?

我有30家子公司,每家公司都实施了他们的网络服务(使用不同的技术).

我需要实现一个Web服务来聚合它们,例如,所有子公司Web服务都有一个带有名称的Web方法,GetUserPoint(int nationalCode)我需要实现我的Web服务,它将调用所有这些并收集所有响应(例如总和)分数).

这是我的基类:

public abstract class BaseClass
{ // all same attributes and methods
  public long GetPoint(int nationalCode);
}
Run Code Online (Sandbox Code Playgroud)

对于每个子公司Web服务,我实现了一个继承此基类并定义自己的GetPoint方法的类.

public class Company1
{
  //implement own GetPoint method (call a web service).
}
Run Code Online (Sandbox Code Playgroud)

public class CompanyN
{
  //implement own GetPoint method (call a web service).
}
Run Code Online (Sandbox Code Playgroud)

所以,这是我的网络方法:

        [WebMethod]
        public long MyCollector(string nationalCode)
        {

           BaseClass[] Clients = new BaseClass[]  { new Company1(),//... ,new Company1()}

           long Result = 0;
           foreach (var item in Clients)
           {
                long …
Run Code Online (Sandbox Code Playgroud)

c# parallel-processing multithreading asynchronous

12
推荐指数
1
解决办法
2814
查看次数