L'arrière-plan est un contrôle personnalisé qui est un ASP: Menu lié à une source xmldatasource. La source xmldatasource est créée dynamiquement en fonction des droits d'accès des utilisateurs. Voici l'événement de chargement pour le contrôle personnalisé:Création dynamique de menus personnalisés générant des erreurs étranges
protected void Page_Load(object sender, EventArgs e)
{
string userId = (string)Session["userId"];
if (userId != null)
{
DataSet ds = dal.RetrieveApplications(userId);
ds.DataSetName = "Menus";
ds.Tables[0].TableName = "Menu";
DataRelation relation = new DataRelation
("ParentChild",
ds.Tables["Menu"].Columns["Folder_Id"],
ds.Tables["Menu"].Columns["Parent_Folder_ID"], true);
relation.Nested = true;
ds.Relations.Add(relation);
xmlDataSource1.Data = ds.GetXml();
}
}
Cela fonctionne parfaitement pour le premier utilisateur qui l'utilise. Mais il semble que chaque utilisateur suivant obtient réellement le menu du premier utilisateur. Je l'ai parcouru et vérifié que mon ensemble de données est bien créé et quand j'examine XMLDatasource.data à la fin du chargement, le xml est correct.
Je suis vraiment coincé.