首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ASP.NET核心3.1客户自定义Razor页面路由

ASP.NET核心3.1客户自定义Razor页面路由
EN

Stack Overflow用户
提问于 2020-02-09 17:53:14
回答 1查看 662关注 0票数 1

我有一个asp.net网络表单,我正在转换到.NET核心。该网站拥有多个用户管理系统中的多个客户。用户需要能够从多个浏览器选项卡管理客户。我的web旧应用程序只是传递参数CustomerId,我不得不跨多个页面管理CustomerId值,这是一件很痛苦的事情。所有页面都必须使用查询?CustomerId=XXX。

在ASP.net核心3中,是否有简单的方法在路由和构造URL中做到这一点?我想加一条这样的路线吗?

  1. http://mywebsite.com/customer/XXX/SettingsPage这将路由到剃须刀页/Pages/SettingsPage.cshtml
  2. http://mywebsite.com/customer/XXX/AdminArea/Users/Edit1,这将路由到带有剃须刀页/Areas/AdminArea/Users/Edit.cshtml

的区域

然后,在我的代码中,我可以从路由创建URL,获取XXX值并查询customer表。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-10 01:31:35

看完这篇文章后,Tab specific cookies without using sessionStorage or any HTML5 features

我在asp.net内核中使用了URL重写引擎。这里有一个示例项目-- https://github.com/aspnet/AspNetCore.Docs/tree/master/aspnetcore/fundamentals/url-rewriting/samples/3.x/SampleApp

代码语言:javascript
运行
复制
using (StreamReader apacheModRewriteStreamReader =
                File.OpenText("ApacheModRewrite.txt"))
            using (StreamReader iisUrlRewriteStreamReader =
                File.OpenText("IISUrlRewrite.xml"))
            {
                var options = new RewriteOptions()
                    .AddRedirect("redirect-rule/(.*)", "redirected/$1")
                    .AddRewrite(@"^rewrite-rule/(\d+)/(\d+)", "rewritten?var1=$1&var2=$2", skipRemainingRules: true)
                    .AddRewrite(@"customer(\d+)\/(.*)$", "$2?customerid=$1", skipRemainingRules: true)
                    .AddApacheModRewrite(apacheModRewriteStreamReader)
                    .AddIISUrlRewrite(iisUrlRewriteStreamReader)
                    .Add(RewriteRules.MethodRules.RedirectXmlFileRequests)
                    .Add(RewriteRules.MethodRules.RewriteTextFileRequests)
                    .Add(new RewriteRules.RedirectImageRequests(".png", "/png-images"))
                    .Add(new RewriteRules.RedirectImageRequests(".jpg", "/jpg-images"));

                app.UseRewriter(options);
            }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60139569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档