asp.net обработчик, как маршрутизация mvc без mvc?


Раньше я создавал свои веб-приложения в asp.net в таких есть только одна страница ведьма по умолчанию.aspx

http://localhost/mywebapp1/?q=blog/posts/get/42

Я сам разбираю " q " и делаю всю обработку. Мне действительно не нужен весь персонал MVC. Я просто хочу убрать "?q= "

Есть идеи?

2 3

2 ответа:

Вы можете использовать ASP.NET маршрутизация за пределами ASP.NET MVC. Эта статья MSDN объясняет, как это сделать.

Если вы используете IIS 7 (Windows 2008 / Vista или выше), вы можете использовать модуль перезаписи URL IIS из http://www.iis.net/download/URLRewrite

Определяется правилами либо в интернете.config или через интерфейс IIS.

Например, я использую следующие удобные URL-адреса для покупки товаров на моем сайте.

Это делает mysite.com/shop/package-one to to mysite.com/shop/default.aspx?package=package-one

<rewrite>
  <rules>
    <rule name="ShopPackages" stopProcessing="true">
      <match url="^shop/(.*)"/>
      <conditions>
        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/>
      </conditions>
      <action type="Rewrite" url="/shop/default.aspx?package={R:1}" appendQueryString="false"/>
    </rule>
  </rules>
</rewrite>