2009-02-08 5 views
0

J'utilise ASP.NET Dynamic Data pour créer un site Web qui a deux aspects - une vue publique, où les données ne peuvent être consultées, et un site d'administration où toutes les opérations CRUD se produisent. Je veux que ce soit un seul site Web DD.Comment modifier les URL générées par Dynamic Data pour les relations d'entité?

J'ai installé deux itinéraires:

routes.Add(new DynamicDataRoute("admin/{table}/{action}.aspx") 
    { 
     Constraints = new RouteValueDictionary(new { action = "List|Details|Edit|Insert" }), 
     Model = model 
    }); 

et

routes.Add(new DynamicDataRoute("{table}") 
    { 
     Action = PageAction.List, 
     ViewName = "ListPublic", 
     Model = model 
    }); 

Le problème est, quand je vois ma page publique, ListPublic (une copie du List.aspx d'origine), ça marche bien sauf les liens vers l'entité liée utilisent l'URL de admin/Suppliers/Details.aspx? SupplierId = 1 ... quand ce que je veux qu'ils pointent est Fournisseurs/Details.aspx? SupplierId = 1

Comment puis-je contrôler le rendu de l'URL pour la relation dans Dynamic Data?

Répondre

0

Ok, il s'avère qu'avec un peu de googling je me suis aidé. Il semble qu'il existe un modèle de champ pour ce ForeignKey.aspx qui lie l'URL à la valeur de GetNavigateUrl().

Je suppose que ma question est maintenant:

  • Qu'est-ce GetNavigateUrl faire?
  • Quelle est la meilleure approche pour obtenir mon résultat de havnig un site Web public et privé en utilisant des données dynamiques
Questions connexes