ASP.Net - Могу ли я получить доступ к своим свойствам BasePage из разметки? - PullRequest
2 голосов
/ 22 октября 2010

Я хочу иметь возможность расширить класс System.Web.UI.Page, а затем легко получить доступ к этим свойствам из разметки. Я знаю, что могу сделать это из кода, но возможно ли это из разметки? Возьмите следующий класс.

public class MyBasePage : System.Web.UI.Page {
  public bool DoesThisWork { get; set; }
}

Тогда я хочу получить доступ к нему из разметки html, возможно, из директивы @Page.

<%@Page Language="C#" DoesThisWork="False" ...  %>

Конечно, вышеупомянутая страница использует класс MyBasePage вместо System.Web.UI.Page.

Ответы [ 3 ]

4 голосов
/ 24 октября 2010

Я думаю, что вопрос сосредоточен на том, как использовать пользовательские свойства в директиве страницы - и ответ зависит от того, используете ли вы проект Web Application или Web Site .

Для веб-сайта вам необходимо назначить CodeFileBaseClass для неполного класса (под App_Code или во внешней сборке). Для веб-приложения достаточно указать директиву Inherits.

0 голосов
/ 22 октября 2010

Не напрямую из HTML, как в вашем примере, но вы можете сделать это:

<td>Result: <%=DoesThisWork.ToString()%></td>
0 голосов
/ 22 октября 2010

Да. Вы можете получить доступ к свойствам базовой страницы из разметки, так же как и к любому другому свойству на странице.

Например:

<a href="<%=MyBasePageProperty %>">this is a link</a>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...