ASP.NET: почему Event не добавляется в codebehind? - PullRequest
0 голосов
/ 17 ноября 2009

У меня есть веб-страница ASP.NET, разработанная в VS 2008 со следующей директивой Page на странице aspx

Я разместил элемент управления asp.net на своей странице и дважды щелкнул по нему, чтобы написать событие. Оно показывает событие (метод) на самой странице aspx. Почему он не добавляется в файл aspx.cs?

Я удалил атрибут Inherits со страницы, поскольку хочу развернуть его в среде с файлами aspx и файлом aspx.cs. (НЕ DLL)

Ответы [ 3 ]

1 голос
/ 17 ноября 2009

Вы можете попробовать использовать CodeFile вместо CodeBehind в вашей директиве Page. Однако в этом случае вам также необходимо объявить ссылки на элементы управления на своей странице.

Если вы не хотите развертывать DLL, обычное решение - структурировать ваш сайт как «веб-сайт» Visual Studio вместо «веб-приложения». На веб-сайте вы можете просто скопировать весь свой код и файлы ASPX на сервер, где они будут скомпилированы при первом доступе.

0 голосов
/ 17 ноября 2009

Попробуйте это (заменив namespace.to.my.class на пространство имен, содержащее определение класса SupplierAnalysis ):

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SupplierAnalysisReport.aspx.cs" Inherits="namespace.to.my.class.SupplierAnalysisReport" %>

Вам понадобится атрибут Inherits, а также CodeBehind.

0 голосов
/ 17 ноября 2009

Это потому, что если вы удалите атрибут Inherits, дизайнер больше не сможет найти частичный класс, определенный в вашем коде. Атрибуты CodeBehind и Inherits работают вместе.

CodeBehind

Указывает имя скомпилированного файла, который содержит класс, связанный со страницей. Этот атрибут не используется во время выполнения.

Этот атрибут включен для совместимость с предыдущими версиями ASP.NET, чтобы реализовать особенность кода В ASP.NET версия 2.0, вы должны вместо этого использовать атрибут CodeFile, чтобы указать имя исходного файла вместе с атрибут Inherits для указания полное имя класса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...