Тип 'xxx' не определен, ошибка BC30002 - PullRequest
0 голосов
/ 09 апреля 2010

Можно создать экземпляр класса C # в файле codephind aspx.vb?

Когда я пытаюсь сделать это в событии Page_Load:

Dim oFlow As New Flow(HttpContext.Current.Request)

Я получаю Тип «Поток» не определен. Сам класс Flow находится здесь:

App_Code/CSCode/Cust/Frm/Flow.cs

Нет пространства имен, связанного с этим классом.

Любые предложения будут с благодарностью.

ура

Девин

Ответы [ 2 ]

1 голос
/ 09 апреля 2010

Кажется, в Google есть несколько статей, в которых говорится, что можно вызвать класс C # из VB напрямую, используя ссылку. Однако я никогда не использовал этот метод раньше. Вот что я бы предложил:

  1. Создайте новый проект внутри вашего решения
  2. Создать этот проект как библиотеку классов c #
  3. Скомпилируйте этот проект в режиме отладки или выпуска (это создаст DLL в папке проектов debug / bin или release / bin).
  4. Вернитесь к своему проекту ASP.Net VB и сделайте ссылку (щелкните правой кнопкой мыши по проекту в проводнике, и вы должны увидеть опцию ссылки) на только что созданную DLL.

Теперь вы можете вызывать код c # так же, как и любую другую библиотеку классов из вашего VB-кода. Кроме того, если вам нужно внести изменения в код C #, все, что вам нужно сделать, это сделать их, скомпилировать снова, и, поскольку на них есть ссылки в вашем проекте VB, все будет обновлено автоматически.

Надеюсь, это поможет.

0 голосов
/ 12 апреля 2010

Спасибо за ответ.

Причина, по которой у меня возникли проблемы, заключается в том, что я использую IIS 6 на своем компьютере с Windows XP и инструмент администрирования XP PRO IIS, и у меня не был запущен правильный сайт.

Как только я переключился на нужный сайт в XP PRO IIS Admin Tool, а затем перекомпилировал, я смог вызвать свой класс C # изнутри страницы .vb без заминки, и intellisense также распознал класс:)

ура

Девин

...