Существует ли эквивалент сопоставления URL в стиле Spring MVC в Java для C # /. NET? - PullRequest
3 голосов
/ 14 августа 2011

Я ищу C # эквивалент Отображение URL Spring MVC с использованием аннотаций , т.е. в Java я могу написать:

@Controller
@RequestMapping("/some-friendly-url/")
class MyController
{
    @RequestMapping(value = "/{type}/more-seo-stuff/{color}", method = RequestMethod.GET)
    public List<SomeDTO> get(@PathVariable String type,
                             @PathVariable String color,
                             int perPage) {
        ...
    }

    @RequestMapping(method = RequestMethod.POST)
    public String post(@RequestBody SomeDTO somethingNew) {
        ...
    }
}

Это на самом деле гораздо более мощный пример, чем этот простой пример, как известно любому знакомому.

Я пытался найти то, как добиться того же с ASP.MVC 3 или с MonoRail, и обе платформы, кажется, основаны на философии соглашения о переконфигурировании RoR "//", и было бы трудно достичь выше с ними и требуют много специальных записей о маршрутизации за пределами класса контроллера с небольшим подмножеством функций, доступных через атрибуты. Spring.NET, похоже, не решает эту проблему и заявляет, что функциональность маршрутизации ASP.MVC достаточна.

Есть ли что-нибудь в мире C #, обеспечивающее этот тип функциональности? Я как раз собирался начать писать что-то свое, чтобы решить эту проблему, но я надеялся, что этого не потребуется.

Редактировать: Наконец нашел проект "AttributeRouting", который также доступен на NuGet: https://github.com/mccalltd/AttributeRouting/wiki/1.-Getting-Started. Работает отлично. Не поддерживает полный набор функций Spring MVC, но поддерживает большинство из них.

Также Акос Лукачс указал на другую хорошую библиотеку, представленную ниже ITCloud. Однако этого, к сожалению, нет в NuGet.

Ответы [ 2 ]

0 голосов
/ 16 июня 2012

Я в конце концов использовал https://github.com/mccalltd/AttributeRouting/wiki/1.-Getting-Started. Размещать это только сейчас, чтобы держать вопрос завершенным.

0 голосов
/ 14 августа 2011

Конечно, вы можете использовать Spring.NET:

http://www.springframework.net/

...