Есть ли разница между классами System.Runtime.InteropServices.UCOM * и System.Runtime.InteropServices.ComTypes. * В .NET? - PullRequest
0 голосов
/ 12 января 2011

Я пытаюсь удалить кучу предупреждений из старой системы, и одно из них выглядит следующим образом:

'System.Runtime.InteropServices.UCOMIEnumMoniker' устарел: 'Использовать System.RuntimeВместо этого .InteropServices.ComTypes.IEnumMoniker.http://go.microsoft.com/fwlink/?linkid=14202'

Есть аналогичные предупреждения для других классов UCOM в System.Runtime.InteropServices.Предупреждение на самом деле довольно ясно о том, что делать, и я действительно хочу последовать совету, который оно дает.Мне было бы очень удобно сделать это, если бы они просто переименовали классы (удалили часть 'UCOM') и переместили их в пространство имен ComTypes.Но я не знаю, так ли это, что они сделали, поэтому я спрашиваю вас, потому что, если что-то действительно изменит эти классы, мне не очень удобно просто использовать новые, потому что у меня нет реального способатщательно протестируйте любые изменения (что является другой проблемой, в которую я не хочу сейчас вдаваться).

Итак, кто-нибудь знает, существует ли реальная разница между этими старыми и новыми классами?

Спасибо!

1 Ответ

1 голос
/ 12 января 2011

Я вполне уверен, что они были переименованы из-за грубого нарушения стандартов именования .NET Framework. Имя типа интерфейса должно начинаться с буквы «I». Между декларациями есть несколько очень тонких различий, и ничто не доставит вам неприятностей.

...