ASP .NET页面名称“别名”

时间:2011-10-18 09:45:11

标签: asp.net

我有一个网络,其中有两个版本:一个是西班牙语,一个是英语。它们位于不同的服务器和不同的域中。所以他们实际上表现得像两个不同的网站。

我只有一个ASP .NET项目,根据域名,我会以西班牙语或英语显示所有文本。这是正常的。

我首先用西班牙语开发它,所以我的页面名称是用西班牙语写的,比如“Buscar.aspx”(“Buscar”的意思是“搜索”)。

我想翻译页面的名称,以便在浏览器的地址栏中显示英文名称。例如,对于我的页面“Buscar.aspx”,我想在地址栏中显示“Search.aspx”。

所以我的问题是:有没有办法声明某种“别名”(或其他一些机制),这样我就可以通过一个ASP处理对“Buscar.aspx”和“Search.aspx”的请求。 NET页面,但仍然在地址栏中显示为两个不同的地址?

2 个答案:

答案 0 :(得分:3)

<强> URL Rewriting

您可以将Search.aspx重写为Buscar.aspx

<rewrite>
  <rules>
    <rule name="Search">
      <match url="^Search.aspx" />
      <action type="Rewrite" url="Buscar.aspx" />
    </rule>
  </rules>
</rewrite>

然后可以将这些规则放在您的英文web.config文件中

答案 1 :(得分:3)

看一下路由。您可以在此处找到一些文档:ASP.NET Routing

路由意味着您可以指定映射到某个ASPX的路径。如果您根据语言设置切换路由配置,则可以获得所需:)