Пользовательский маршрут и область в MVC 2 - PullRequest
0 голосов
/ 23 июня 2010

Я хотел бы отобразить области следующим образом:

/artists/{artistName}/images
/artists/{artistName}/images/{imageId}
/artists/{artistName}/blogs
/artists/{artistName}/blogs/{blogId}
/artists/{artistName}/albums
/artists/{artistName}/albums/{albumId}

в mvc2, как мне настроить маршрут по области и как выглядит моя файловая структура для моего вида области?

спасибо.

1 Ответ

1 голос
/ 23 июня 2010

Я бы, вероятно, сделал что-то подобное при регистрации в вашем регионе:

Public Overrides ReadOnly Property AreaName() As String
            Get
                Return "Artists"
            End Get
        End Property

Public Overrides Sub RegisterArea(ByVal context As System.Web.Mvc.AreaRegistrationContext)
     context.MapRoute( _
          "Artists_default", _
          "Artists/{artistName}/{controller}/{id}/{action}", _
                New With {.id = UrlParameter.Optional, .action = "Index"} _
            )
End Sub

Рассматривайте изображения / блоги / альбомы как ваш контроллер.Поместите действие в конец строки, чтобы оно оставалось невидимым, если в каждом из ваших примеров есть только одно действие.

РЕДАКТИРОВАТЬ: есть вторая часть вашего вопроса:)

Пройдя по этому маршруту, вы получите структуру папок, подобную этой

Areas
  Artists
     Controllers
          ImagesController
          BlogController
          AlbumsController
     Views
          Images
               Index
          Blog
               Index
          Albums
               Index

Ваша папка просмотраname соответствует имени контроллера, само имя представления обычно соответствует действию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...