asp.net 在数据库条目上创建虚拟目录

asp.net make virtual directory on database entry

我有一个URL foo.com/page.aspx?id=1,ID等于数据库中的一条记录。

我希望网站创建一个虚拟目录 foo.com/1/ 并在数据库中创建记录后让它显示相同的内容。

如何创建虚拟目录或者有没有办法在服务器上转换它?

我会推荐 IIS url rewrite module。这样页面请求 foo.com/1 被转换为 foo.com/page.aspx?id=1.

<rewrite>
  <rules>
    <rule name="pages" stopProcessing="true">
      <match url="^([0-9/]+)" ignoreCase="true"/>
      <action type="Rewrite" url="page.aspx?id={R:1}"/>
    </rule>
  </rules>
</rewrite>

那你就可以在page.aspx上用string id = Request.QueryString["id"].ToString();获取id,然后从数据库中显示相应的内容。