如何从 ASP.NET Web 表单迁移到 ASP.NET 网页?即 /default.aspx 到 /default

How to migrate from ASP.NET Web Forms to ASP.NET Web Pages? i.e /default.aspx to /default

我使用 ASP.NET 网络表单设计了一个网站。它包含类似

的网页

default.aspx

about.aspx

contact.aspx

现在我正在将 WebForms 迁移到 WebPages (CSHTML)。所以现在,我的网页看起来像这样

/

/about

/contact

所以我的问题是,如何将访问 /contact.aspx 的用户重定向到 /contact 页面等等。可不可以?

你应该看看 RewriteModule

然后将类似这样的内容添加到您的 web.config

<system.webServer>
    <rewrite>
      <rules>
        <rule name="page.aspx">
          <match url="^default\.aspx$" />
          <action type="Redirect" url="" />
        </rule>
        <rule name="page.aspx">
          <match url="^(\w+)\.aspx$" />
          <action type="Redirect" url="{R:1}" />
        </rule>
        <!-- ... -->

I have designed a website using ASP.NET web form. Now I am migrating WebForms to WebPages (CSHTML).

how to redirect the user who visits /contact.aspx to /contact page

这是Route Engine的职责,您需要在Application_Start中指定您想要的路由方式。 Web 窗体和 MVC 不向后兼容。

我唯一的建议是,如果这是一个新项目,您希望作为新的 MVC 项目启动。然后将你在Web Form中所做的转换成Controller、View和Model。