2008-08-25 12 views
12

Jak nowa asp.net mvc wdrożenie Microsoft obsłużyć partycjonowanie aplikacji - na przykład:asp.net mvc - podfoldery

--index.aspx 
--about.aspx 
--contact.aspx 
--/feature1 
--/feature1/subfeature/action 
--/feature2/subfeature/action 

myślę, co próbuję powiedzieć, że wydaje się, wszystko musi iść do katalogu głównego folderów widoków/kontrolerów, które mogą stać się nieporęczne podczas pracy nad projektem, który w przypadku tworzenia za pomocą formularzy sieciowych może zawierać wiele folderów i podfolderów do partycjonowania aplikacji.

Myślę, że otrzymałem model MVC i podoba mi się jego wygląd w porównaniu do formularzy internetowych, ale wciąż mam głowę, jak zbudować duży projekt w praktyce.

Odpowiedz

11

Nie ma żadnych problemów z organizowaniem kontrolerów. Musisz tylko skonfigurować trasy, aby wziąć pod uwagę organizację. Problem, który napotkasz, polega na znalezieniu widoku kontrolera, ponieważ zmieniłeś konwencję. Nie ma jeszcze żadnych wbudowanych funkcji, ale łatwo jest stworzyć pracę wokół siebie za pomocą ActionFilterAttribute i niestandardowego lokalizatora widoku, który dziedziczy ViewLocator. Następnie, podczas tworzenia kontrolera, po prostu określ, jakiego ViewLocator ma użyć, aby kontroler wiedział, jak znaleźć ten widok. W razie potrzeby mogę opublikować kod.

Ten rodzaj metody idzie w parze z pewną radą, jaką dałem innej osobie, aby podzielić ich widoki na portal za pomocą ASP.NET MVC. Tutaj jest link to the question jako odniesienie.

7

Jeśli chodzi o sposób rozmieszczenia widoków, możesz umieścić swoje widoki w podfolderach, jeśli chcesz i utworzyć własną strukturę widoku. Wszystkim widokom zawsze można się odwoływać do ich pełnej ścieżki za pomocą składni ~. Więc jeśli umieścisz Index.aspx w \ Views \ Feature1 \ Home, możesz odwołać się do tego widoku za pomocą ~/Views/Feature1/Home/Index.aspx.