Ссылка не передается при импорте класса на 32-битной машине - PullRequest
2 голосов
/ 07 марта 2019

У меня есть решение Visual Studio, которое состоит из нескольких различных классов, каждый из которых при компиляции создает файл .dll. Большинство классов написаны на VB.Net, но некоторые написаны на C #. Один класс, ClassA, написан на C # и имеет Sybase.Ado.Net4.AseClient в папке «Ссылки». Отдельный класс ClassB написан на VB.net и импортирует ClassA. ClassB не имеет Sybase.AdoNet4.AseClient в своей папке «Ссылки». Каждый раз, когда это решение Visual Studio открывается на 32-разрядной машине, для ClassB появляется следующая ошибка:

Ошибка 2 Требуется ссылка на сборку 'Sybase.AdoNet4.AseClient, версия = 4.157.104.0, культура = нейтральная, PublicKeyToken = 95d94fac46c88e1e', содержащая тип 'Sybase.Data.AseClient.AseConnection'. Добавьте его в свой проект.

Однако, когда это решение Visual Studio открывается на 64-разрядной машине, никаких ошибок не появляется. Нам нужно, чтобы это решение могло успешно компилироваться как на 32-разрядных, так и на 64-разрядных компьютерах, и мы должны делать это без добавления Sybase.Data.AseClient.AseConnection в Ссылки ClassB. Почему ошибка появляется только при использовании 32-разрядного компьютера, а не 64-разрядного? Поскольку ClassA имеет Sybase.Data.AseClient.AseConnection в своих ссылках, не должен ли ClassB получить его, импортировав ClassA?

...