0

参考This questionScottGu's Documentation,我已经成功地为我的网站的会员资料页面路由了一个 URL。

我的页面重定向~/page/MemberName~/page/Default.aspx,用户MemberName请求信息。
到目前为止,这一直很好。

我现在需要一种方法来允许用户编辑他们的数据,并希望它像~/page/MemberName/Private. 标签将Private告诉页面用户可以编辑他们的内容。

4

1 回答 1

0

虽然我会考虑做@huMpty duMpty建议的事情并为此使用角色。

您只需要设置路由以在 URL 中包含额外信息。

routes.MapPageRoute("SalesRoute",
    "page/{MemberName}/{ExtraData}",
    "~/Default.aspx");

然后像访问 MemberName 一样访问它:

Page.RouteData.Values["ExtraData"];

如果您想确保传入“私有”,您可以通过其中一个重载向路由添加约束。

routes.MapPageRoute("SalesRoute",
    "page/{MemberName}/{ExtraData}",
    "~/Default.aspx",
    false,
    new RouteValueDictionary(),
    new RouteValueDictionary{
       { "ExtraData", "[P|p]rivate" }
    });

值得注意的是,您可能希望对此进行很好的测试,因为您最终可能会得到一个过于严格的路由规则。

于 2012-09-11T12:26:35.120 回答