我开发了一个asp.net应用程序。我将该应用程序作为IIS中的新网站托管。
我希望应用程序能够像下面那样工作,
上述所有3个电话都需要访问我的网站,我会使用名称' firm1',' firm2'进行一些处理。
我不想创建多个网站/虚拟应用程序或子域。
答案 0 :(得分:0)
在asp.net应用程序中查看Routing。
这将允许您编写将接收所请求页面的URL的模块,拆分组件中的URL并从那里委托给您的控制器。
如果您已经设置了路由,则需要查看需要位于“公司”下面的所有路由。并修改它们映射到的URL。例如,如果你有
routes.MapPageRoute("LoginRoute", "/login", "~/login.aspx")
您可以将其更改为
routes.MapPageRoute("LoginRoute", "/{FIRM_CODE}/login", "~/login.aspx")
路由类将解析URL的第一部分并使其在控制器中可用
RouteData.values("FIRM_CODE")
从那里,您需要修改所有逻辑以处理公司特定的行为。您可能希望将此值存储在会话状态中,以便库可以访问当前公司等。
答案 1 :(得分:0)
您可以通过创建点击事件来使用从一个域到另一个域的重定向。但最好的方法是使用上一个答案中提到的路由。这是因为如果页面更改其名称或位置,则使用“路由”生成的超链接不需要更改URL。
以下内容将帮助您有效地使用路由: 1.定义不依赖于物理文件名的自定义URL模式。 2.使用标记或代码,根据路由URL参数值生成URL。 3.在路由页面中,使用标记或代码检索URL段中传递的值。
要将路由添加到网站,可以使用RouteCollection.MapPageRoute方法将它们添加到RouteTable类的静态Routes属性。