Наш клиент сообщил, что при попытке использовать наш .NET .DLL в VB.NET они получают сообщение об ошибке:
ошибка BC31429: «Наш класс» неоднозначен, поскольку несколько типовэто имя существует в пространстве имен «our.company.nspace»
Мне также удалось воспроизвести ошибку с фиктивным проектом, содержащим одну строку
Dim x as our.company.nspace.OurClass
Обычноэто потому, что есть несколько типов, имена которых отличаются только регистром.Но в этом случае нет такой двусмысленности.OurClass
- это уникальное имя не только в определенном пространстве имен, но и во всей сборке и любых других сборках, на которые ссылается проект.Отражатель также показывает это.Также нет учеников с таким же именем, что также проверено Reflector.
Также странно то, что ошибки не было сразу после того, как я создал фиктивный проект, а затем он внезапно появился и теперьбольше не уходиНа самом деле я даже ничего не изменил между двумя перекомпиляциями, из которых первый работал, а второй нет.
Итак ... что дает?
(Примечание:.DLL использует и ссылается на vjslib (J #), если это имеет какое-либо отношение)