Je crée une solution ASP.NET MVC, et à l'intérieur j'avais 2 projets de site Web MVC.Comment puis-je référencer une vue principale dans un autre projet dans ASP.NET MVC?
Je suis intéressé par la création d'un 3ème projet appelé "Partagé", dans lequel je peux référencer les vues/contenus partagés entre les deux sites pour n'avoir qu'un seul endroit pour les éditer.
- WebUI.Site1 (ASP.NET MVC site)
- WebUI.Site2 (ASP.NET MVC site)
- WebUI.Shared (nouvellement créé ASP.NET MVC site)
Comment puis-je référencer l'emplacement d'un Masterview s'il se trouve dans un projet différent?
Donc, normalement au sommet d'une vue que je renverrait une Masterview comme ceci:
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Tabbed.Master" Inherits="System.Web.Mvc.ViewPage<WebUI.ViewModels.Admin.EditProfileViewModel>" %>
Cependant,
Maintenant que "Tabbed.Master" est pas dans le projet local, c'est dans un projet de différence dans la solution. J'ai créé une référence au projet mais je ne sais pas comment référencer Tabbed.Master de WebUI.Site1 à WebUI.Shared?
Quelque chose comme:
<%@ Page Title="" Language="C#" MasterPageFile="WebUI.Shared.Views.Tabbed.Master" Inherits="System.Web.Mvc.ViewPage<WebUI.ViewModels.Admin.EditProfileViewModel>" %>
ne fonctionne pas.
Comment puis-je référencer l'emplacement de choses comme des masterviews, des fichiers css, des images dans des projets comme celui-là?
Cela ne fonctionnera pas. Vous ne pouvez pas simplement pointer vers un aspx/ascx ou SiteMaster dans un autre chemin virtuel et l'avoir fait partie de votre base de code. –
@Nissan Fan - Oui, vous pouvez. Je viens de mettre en place un projet de test pour vérifier mon affirmation. IIS ne se soucie pas si une page maître donnée est dans le même projet Web que la racine Web. Tant que les références et les chemins sont trouvables à partir de la racine du site, IIS est heureux. Cela suppose que vous utilisez IIS pour configurer les sites - cette technique ne fonctionnera pas bien avec le serveur de développement ASP.NET intégré de Visual Studio. – Brandon