国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

asp.net2.0 URL重寫以及urlMappings問題(1)

2024-07-10 13:12:33
字體:
來源:轉載
供稿:網友

    在asp.net2.0中的urlmappings倒是非常好用,可惜暫不支持正則表達式,不過,好在如果用ihttpmodule的話
不管什么樣的請求都會先經過ihttpmodule這樣就為url重寫提供了一個好機會:

    下面是我寫的一個ihttpmodule:

using system;
using system.web;

public class rewritemodule : ihttpmodule
{
    public rewritemodule()
    {
    }
    public override string tostring()
    {
        return this.gettype().tostring();
    }

    void ihttpmodule.dispose()
    {
    }
    private static system.xml.xmldocument ruledoc = null;
    private static system.xml.xmldocument getruleconfig(system.web.httpcontext app)
    {
        if (ruledoc == null)
        {
            ruledoc = new system.xml.xmldocument();
            ruledoc.load(app.server.mappath("~/rule.xml"));
        }
        return ruledoc;
    }
    public static string geturl(system.web.httpcontext cxt, string path)
    {
        system.xml.xmldocument doc = getruleconfig(cxt);
        system.xml.xmlnodelist lst = doc.getelementsbytagname("rewriterrule");
        string pat = "";
        foreach (system.xml.xmlnode nd in lst)
        {
            system.xml.xmlnodelist sub = nd.childnodes[0].childnodes;
            foreach (system.xml.xmlnode chk in sub)
            {
                pat = "^" + chk.innertext + "$";
                system.text.regularexpressions.regex reg = new system.text.regularexpressions.regex(pat, system.text.regularexpressions.regexoptions.compiled | system.text.regularexpressions.regexoptions.ignorecase);
                if (reg.ismatch(path))
                {
                    return reg.replace(path, nd.childnodes[1].innertext);
                }
            }
        }
        return null;
    }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 莆田市| 富民县| 辰溪县| 定日县| 肇源县| 当涂县| 东阳市| 澄迈县| 南丹县| 桃江县| 新源县| 靖江市| 商水县| 宿松县| 越西县| 房产| 明光市| 宜昌市| 滕州市| 扶余县| 乡城县| 萍乡市| 永靖县| 漾濞| 满洲里市| 余江县| 西畴县| 隆昌县| 岑巩县| 贡山| 察隅县| 浦城县| 马边| 怀仁县| 长顺县| 句容市| 珲春市| 昭通市| 灵寿县| 镇宁| 德兴市|