Нужно ли использовать Marshal.ReleasComObject для 4.0 «динамических» переменных? - PullRequest
1 голос
/ 09 января 2011

У меня есть следующий код C #:

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

   dynamic foo = Activator.CreateInstance(type);

   return (int)foo.Foo();
}

У меня вопрос: нужно ли использовать Marshal.ReleaseComObject для переменной с именем foo?

Я бы обычно делал это, если бы использовал отражение обычным способом для вызова метода в COM-объекте, но, поскольку динамический режим связан с поздним связыванием и магией, мне интересно, позаботятся ли об этом переменные типа dynamic для меня ...

Спасибо

1 Ответ

0 голосов
/ 09 января 2011

Вы не должны называть это вообще в большинстве ситуаций , если вы действительно не знаете, что делаете.

dynamic не будет иметь значения.dynamic - это просто другой способ вызова методов объекта;это никак не влияет на объект.

...