как создать ссылку общественные объекты из других страниц ASP.NET
Вопрос
Как мы можем получить доступ к классам и переменным и ссылаться на них на разных страницах в ASP.NET?В версии 2003 это было прямолинейно, просто укажите имя класса страницы, и вся страница будет в вашем распоряжении, но с веб-сайтами вместо веб-приложений это, похоже, не так.У меня есть папка App_Code с классом, в котором определена следующая строка:
public string GetPath()
{
return mypage.thisUrl;
}
и еще одна страница, которая выглядит примерно так:
public partial class mypage : System.Web.UI.Page
{
public string thisUrl
{
get { return "/newfolder/mypage.aspx"; }
}
protected void Page_Load(object sender, EventArgs e)
{
}
}
но очевидно, что это не работает...было бы здорово, если бы кто-нибудь мог направить меня к хорошему источнику знаний, поскольку я пробовал MSDN, этот сайт и Google, и у меня также есть книга, лежащая рядом со мной, найти свой путь непросто : (
Решение
Вам понадобится экземпляр класса mypage или сделайте thisUrl статическим.
Не очень хорошая идея делать страницы такими зависимыми друг от друга, ИМХО
public partial class mypage : System.Web.UI.Page
{
public static string thisUrl
{
get { return "/newfolder/mypage.aspx"; }
}
}
public partial class mypage : System.Web.UI.Page
{
... Page_Load() {
mypage.thisUrl
or
new mypage().thisUrl
}
}
Другие советы
public string GetPath()
{
return mypage.thisUrl;
}
не похоже на класс.Возможно, в этом и заключается ваша проблема в первую очередь.Похоже, вам следует пройти базовое обучение в виртуальных лабораториях от Microsoft.