Wiem, że w C# mogę zrobić fabrykę, ale nie wiem, jak ponownie użyć kodu w aspx. Mój kod był pierwotnie przeznaczony tylko dla ARList, ale teraz ma IcnList. Myślałem o zrobieniu instrukcji switch, ale czy nie ma czegoś lepszego do kodowania?
Funkcja
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
ARExtractionController arController = new ARExtractionController();
Dictionary<int, string> ARDictionary = arController.GetTickets();
List<int> sortedARList = new List<int>();
foreach (KeyValuePair<int, string> kv in ARDictionary)
{
sortedARList.Add(kv.Key);
}
sortedARList.Sort();
sortedARList.Reverse();
ARList.DataSource = sortedARList;
ARList.DataBind();
ARList.Items.Insert(0, " ");
ARList.AutoPostBack = true;
}
}
4 odpowiedzi
Powinieneś być w stanie dziedziczyć z jednej strony, aby ponownie użyć kodu.
Początek pliku aspx:
<%@ Page Language="C#" AutoEventWireup="true" Inherits="MyNamespace.CommonCode" %>
Jeśli chcesz tylko móc ponownie wykorzystać kod, dodaj klasę do swojego projektu dla metod narzędziowych i zrzuć ją tam, aby obie strony mogły korzystać.
Jeśli próbujesz ponownie użyć kodu z powiązanym interfejsem użytkownika, zajrzyj do kontrolek użytkownika (pliki ascx), które pozwalają to zrobić.
Z pytania nie wynika jasno, co jest dla Ciebie odpowiednie.
W TicketExtractionWeb utwórz klasę BasePage.
Basepage.cs:
public class BasePage : System.Web.UI.Page
{
// Add methods that are used on all your pages in here.
protected DateTime GetCurrentDate()
{
return DateTime.Now;
}
}
I stronę (nazwiemy ją MyPage):
public class MyPage : BasePage
{
protected Page_Load(object sender, EventArgs e)
{
var currentDate = this.GetCurrentDate();
}
}
Więc kiedy tworzysz kolejną stronę aspx, domyślnie będzie to:
public class MyNewPage : System.Web.UI.Page
{
// ...
}
Po prostu zmień : System.Web.UI.Page
na : BasePage
Jeśli chcesz ponownie użyć html , użyj pliku kontroli użytkownika (.ascx), który może być użyty wielokrotnie
kiedy potrzebujesz plików .ascx i jak będziesz ich używać?
Podobne pytania
Powiązane pytania
Nowe pytania
c#
C # (wymawiane „patrz ostro”) jest językiem programowania wysokiego poziomu, statycznie typowanym, wieloparadygmatowym opracowanym przez firmę Microsoft. Kod C # zwykle jest przeznaczony dla rodziny narzędzi Microsoft .NET i czasów wykonywania, do których należą między innymi .NET Framework, .NET Core i Xamarin. Użyj tego tagu w przypadku pytań dotyczących kodu napisanego w C # lub C # formalnej specyfikacji.