Возможно, это очень слабый вопрос, и мне не хватает знаний о ASP.Net.В этом случае будет приветствоваться ссылка на статью с объяснением.
Я работаю над сайтом на ASP.NET с C # в качестве кода.Мой текущий проект включает в себя разработку нескольких страниц с очень похожей функциональностью и многими одинаковыми функциями.Например,
private void PermissionCheck()
{
if (null == Session["UserID"] ||
null == Session["ProjectID"] ||
null == Session["AssetID"] ||
null == Session["ProjectName"])
{
Response.Redirect("~/Login.aspx");
}
}
будет одинаковым на 2 страницах.Некоторые другие вещи такие же.Я хотел бы поместить это в общий базовый класс.Но есть и другие функции, которые вообще не относятся к страницам:
private string GetAttachmentTempPath()
{
return Request.PhysicalApplicationPath + WebConfigurationManager.AppSettings.Get("AttachmentsTempFolder");
}
Я бы хотел переместить это в класс Attachment
, но чтобы получить физический путь к приложению, мне нужнопередать объект Request в этот метод, что не очень приятно, так как он соединяет Attachment
класс с Page.Request
объектом.
Есть ли способ переместить эти функции куда-нибудь еще без необходимости передавать Page.Request
объекты вокруг ??
ps Приложение огромно, и нет возможности изменить всю архитектуру.