Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/262.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#中的工厂创建方法?_C#_Activex_Factory Method - Fatal编程技术网

C#中的工厂创建方法?

C#中的工厂创建方法?,c#,activex,factory-method,C#,Activex,Factory Method,我正在开发一个API,该API提供一些ActiveX COM对象,我阅读了以下警告: 必须使用工厂“创建”方法在此部分中创建COM对象。一旦工厂方法创建COM对象,COM对象将绑定到相应的TWS COM对象(COM对象的实例)。不要尝试将COM对象传递给TWS COM对象的另一个实例 这些词来自这个ActiveX API上的VB示例的一部分。现在我正在使用c#,我应该怎么做才能遵循这个规则呢?不知道这些数据类型是什么,或者这些类型的名称是什么,让我们使用一个名为ActiveXType的数据类型,

我正在开发一个API,该API提供一些ActiveX COM对象,我阅读了以下警告:

必须使用工厂“创建”方法在此部分中创建COM对象。一旦工厂方法创建COM对象,COM对象将绑定到相应的TWS COM对象(COM对象的实例)。不要尝试将COM对象传递给TWS COM对象的另一个实例


这些词来自这个ActiveX API上的VB示例的一部分。现在我正在使用c#,我应该怎么做才能遵循这个规则呢?

不知道这些数据类型是什么,或者这些类型的名称是什么,让我们使用一个名为
ActiveXType
的数据类型,它是在
ApiComObject
中定义的

class TwsCom {

  private ApiComObject apiComObject;

  public TwsCom() {
    apiComObject = new ApiComObject(); // create an instance, if required
  }
  // you might want to keep this variable type private to avoid breaking
  // the rules
  private ActiveXType NewActiveXType() {
    return apiComObject.Create();
  }

  public object SomeMethod() {
    ActiveXType activeX = NewActiveXType();
    return activeX.SomeMethod();
  }

}

这段代码非常模糊,但除非您想提供更多详细信息,否则我只能这样做。

不知道这些数据类型是什么,或者这些类型的名称是什么,让我们使用一个名为
ActiveXType
的数据类型,它在
ApiComObject
中定义

class TwsCom {

  private ApiComObject apiComObject;

  public TwsCom() {
    apiComObject = new ApiComObject(); // create an instance, if required
  }
  // you might want to keep this variable type private to avoid breaking
  // the rules
  private ActiveXType NewActiveXType() {
    return apiComObject.Create();
  }

  public object SomeMethod() {
    ActiveXType activeX = NewActiveXType();
    return activeX.SomeMethod();
  }

}

这段代码非常模糊,但除非您愿意提供更多详细信息,否则我只能这样做。

您能发布可能引发警告的代码吗?您能发布可能引发警告的代码吗?