Pourquoi Ma page de base est la suivante: p> displayusuusers (); code> ne fonctionne pas?
public partial class users : adminPage
{
protected void Page_Load(object sender, EventArgs e)
{
string sName;
adminGeneralData.GetToolData(2, out sName);
pageH1.Text = sName;
DisplayUsers();
}
protected void DisplayUsers()
{
DataSet ds = userData.GetUsersData();
userList.DataSource = ds;
userList.DataBind();
}
}
3 Réponses :
Si je me rappelle correctement, vous devrez appeler l'événement CODE> ONDOD CODE> pour enregistrer l'événement CODE> Event CODE> correctement:
protected override void OnLoad(EventArgs e)
{
if (User.Identity.IsAuthenticated == false) { Response.Redirect("~/Account/login.aspx?ReturnUrl=/admin"); };
if (!(User.IsInRole("admin") || User.IsInRole("super user"))) { Response.Redirect("/"); };
base.OnLoad(e);
}
Dans le code exécuté, il n'y a pas de différence, mais p>
autoeventwireUp code> doit être activé (généralement dans le balisage) pour chaque page li>
-
page_load code> (et Autres événements A> Comme ceci) utilise un abonnement automatique des événements Mécanisme , qui utilise la réflexion, ce qui frappe légèrement les performances li>
ul>
J'ai personnellement recommandé de remplacer surcharger () code>, n'oubliez pas d'appeler base code>. p>
Selon Conseils de performance et astuces dans les applications .NET : p>
Évitez la fonctionnalité AutoEventWireUp P>
Au lieu de s'appuyer sur AutoeventWireUp, remplacez les événements de la page. Par exemple,
au lieu d'écrire une méthode de page_load (), essayez de surcharger la méthode du public () forte>. Cela permet au temps d'exécution de devoir faire une créatureEgate () pour chaque page. P> blockQuote>
Je ne comprends pas vraiment l'utilisation de l'UI.Page en tant que basoclass au lieu de faire une véritable logique commerciale. Ceci est une application de présentation Web. La logique de base doit être séparée de la présentation.
@dingir - Donnez-moi un exemple!