Идентификаторы, начинающиеся с целого числа

У меня есть.net dll, и когда я добавляю его в ссылки, он проходит без проблем. Проблема заключается в том, что его пространства имен начинаются с целого числа, например, 3gppsa5.org.AlarmIRPSystem, и когда я пытаюсь использовать или импортировать его, intelliSense не разрешает и говорит, что идентификатор ожидается.

У меня нет источника этой библиотеки, поэтому я не могу его изменить. Я знаю, что он скомпилирован, и Object Browser правильно показывает все его классы и функции. Однако я не могу использовать его в своем коде. Есть ли способ использовать его в VB .NET

Я пытался использовать Reflection, но нашел много проблем. Я хочу объявить переменную что-то вроде;

Dim MyIRP As 3gppsa5.org.AlarmIRPSystem.AlarmIRP

Есть ли способ достичь этого, не используя рефлексию и не имея полной поддержки intellisense.

Благодарю.

2 ответа

На самом деле, нет. Этот идентификатор не соответствует CLS. Не-CLS-совместимые идентификаторы не могут быть использованы на других языках.NET.

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

Другие вопросы по тегам