我是否需要在4.0'动态'变量上使用Marshal.ReleasComObject?

时间:2011-01-09 18:34:22

标签: com dynamic

我有以下C#代码:

int CallFooMethod()
{
   Type type = TypeDelegator.GetTypeFromProgID("SomeCOMDll.SomeCOMClass");

   dynamic foo = Activator.CreateInstance(type);

   return (int)foo.Foo();
}

我的问题是,我是否需要在名为foo的变量上使用Marshal.ReleaseComObject?

如果我以通常的方式使用反射来调用COM对象上的方法,我通常会这样做,但由于动态是关于后期绑定和魔法,我想知道类型为dynamic的变量是否会处理这个问题对我来说......

由于

1 个答案:

答案 0 :(得分:0)

You shouldn't call it at all in most situtations,除非你真的知道自己在做什么。

dynamic不会有所作为。 dynamic只是在对象上调用方法的另一种方式;它根本不会影响对象。