Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在CMS的WebForms中进行路由?_C#_Asp.net_Vb.net_Routing - Fatal编程技术网

C# 如何在CMS的WebForms中进行路由?

C# 如何在CMS的WebForms中进行路由?,c#,asp.net,vb.net,routing,C#,Asp.net,Vb.net,Routing,我知道您可以在asp.net web表单中创建路由,但如何创建一个处理所有页面的路由,如mydomain.com/aboutus 我听说过定制iroute处理程序,但有人能给我举个例子吗 有人能给我举个C#的例子,说明我将如何处理这个问题吗?我有一个名为page.aspx的文件,它将处理CMS的所有请求。我想这是我需要的一个根处理程序。处理这个问题的一种方法是通过重新写入—与Wordpress、ExpressionEngine和许多其他CMS非常相似 您可以将请求重新写入page.aspx文件,

我知道您可以在asp.net web表单中创建路由,但如何创建一个处理所有页面的路由,如
mydomain.com/aboutus

我听说过定制iroute处理程序,但有人能给我举个例子吗


有人能给我举个C#的例子,说明我将如何处理这个问题吗?我有一个名为
page.aspx
的文件,它将处理CMS的所有请求。我想这是我需要的一个根处理程序。

处理这个问题的一种方法是通过重新写入—与Wordpress、ExpressionEngine和许多其他CMS非常相似

您可以将请求重新写入page.aspx文件,请求的“page”作为参数,并根据需要进行处理


有很多关于为IIS重写模块的信息,然后您可以研究任何数量的开源解决方案,这些解决方案使用此方法来实现IIS 7中的“漂亮”或“seo友好”URL重写,IIS 7.5可以很好地做到这一点。您需要首先通过Web平台安装程序将URL重写安装到IIS中。之后,您将把它放在web.config中

<system.webServer>
    <rewrite>
        <rules>
            <rule name="admin" stopprocessing="true">
                <match url="^admin/(.+)$" />
                <action type="Rewrite" url="/admin/{R:1}.aspx" />
            </rule>
            <rule name="pagehandler">
                <match url="^(.*)$" />
                <action type="Rewrite" url="/pagehandler.aspx?page={R:1}" />
            </rule>
        </rules>
    </rewrite>
</system.webServer>


您可以将更多未通过CMS动态更改的页面置于“页面处理程序”规则之上。/pagehandler.aspx将接受具有参数的页面ID,并动态地提供其内容。这是你要解决的问题。

你不能用asp.net routing~实现这一点吗?你可以,这是一个快速搜索,它似乎详细介绍了自定义IRouteHandler。我从未尝试过这样做-我是ASP.NET新手-这就是为什么我没有建议将其作为答案:-)Rob,作为“回答”您问题的人,我在自己的快速CMS产品中采用了这种方法。如果你想看一看,并问我关于它,它可能会帮助你,因为你正在建立自己的。它在我的个人资料细节。干杯