C# url重写-生成路径
我已经开始在一个没有url重写的网站上工作。现在,请求使用友好的URL,所以我开始使用Intelligencia.UrlRewriter 让我们举一个例子: 我有一个方法:C# url重写-生成路径,c#,asp.net,url-rewriting,C#,Asp.net,Url Rewriting,我已经开始在一个没有url重写的网站上工作。现在,请求使用友好的URL,所以我开始使用Intelligencia.UrlRewriter 让我们举一个例子: 我有一个方法: public static string getCategoriesIndexLink(string category) { string baseUrl = getBaseUrl() + (String)HttpContext.GetGlobalResourceObject("Paths", "categorii
public static string getCategoriesIndexLink(string category)
{
string baseUrl = getBaseUrl() + (String)HttpContext.GetGlobalResourceObject("Paths", "categorii.index");
return baseUrl.AddQueryParam(CQueryStringParameters.CATEGORY, category);
}
哪一个构建了这种URL
"~/Site/Categorii.aspx?category=$1"
现在,我在web.config中添加了以下规则:
<rewrite url="~/Site/Categorii/(.+)" to="~/Site/Categorii.aspx?category=$1" />
但是
没有蜜蜂需要改变它的结构
我的意思是,我有大约30种方法,就像上面的方法一样;如果能指导我在修改url结构的方法iso的输出中使用正则表达式,那将是非常有帮助的
提前谢谢…你可以用这样的东西
Match mExprStatic = Regex.Match(BaseURL+@"/Site/Categorii/m1", BaseUrl+@"/site/categorii/(?<category>\S*)", RegexOptions.IgnoreCase | RegexOptions.Singleline);
if (mExprStatic.Success || !string.IsNullOrEmpty(mExprStatic.Value))
{
string parameters = "?" + mExprStatic.Groups["category"].Value;
if ((context.Request.QueryString.AllKeys != null) && (context.Request.QueryString.AllKeys.Length > 0))
{
foreach (string key in Request.QueryString.AllKeys)
parameters += "&" + key + "=" + Request[key];
}
Server.Transfer("~/Site/Categorii.aspx" + parameters , false);
Match-mExprStatic=Regex.Match(BaseURL+@“/Site/categori/m1”,BaseURL+@“/Site/categori/(?\S*)”,RegexOptions.IgnoreCase|RegexOptions.Singleline);
if(mExprStatic.Success | | |!string.IsNullOrEmpty(mExprStatic.Value))
{
字符串参数=“?”+mExprStatic.Groups[“category”]值;
if((context.Request.QueryString.AllKeys!=null)&(context.Request.QueryString.AllKeys.Length>0))
{
foreach(Request.QueryString.AllKeys中的字符串键)
参数+=“&”+键+“=”+请求[键];
}
Server.Transfer(“~/Site/categori.aspx”+参数,false);
"~/Site/Categorii/m1"
Match mExprStatic = Regex.Match(BaseURL+@"/Site/Categorii/m1", BaseUrl+@"/site/categorii/(?<category>\S*)", RegexOptions.IgnoreCase | RegexOptions.Singleline);
if (mExprStatic.Success || !string.IsNullOrEmpty(mExprStatic.Value))
{
string parameters = "?" + mExprStatic.Groups["category"].Value;
if ((context.Request.QueryString.AllKeys != null) && (context.Request.QueryString.AllKeys.Length > 0))
{
foreach (string key in Request.QueryString.AllKeys)
parameters += "&" + key + "=" + Request[key];
}
Server.Transfer("~/Site/Categorii.aspx" + parameters , false);