gpt4 book ai didi

c# - 从数据库记录创建路由

转载 作者:太空狗 更新时间:2023-10-29 23:46:39 24 4
gpt4 key购买 nike

当前的 ASAX 代码(简化):

void Application_Start(object sender, EventArgs e) 
{
// Enable routing
RegisterRoutes(RouteTable.Routes);
}

void RegisterRoutes(RouteCollection routes)
{
routes.Add("ContactUsRoute",
new Route("contact-us",
new PageRouteHandler("~/contactus.aspx")));
}

问题

此时从数据库中拉取路由是否安全?例如:

void RegisterRoutes(RouteCollection routes)
{
routes.Add("ContactUsRoute",
new Route("contact-us",
new PageRouteHandler("~/contactus.aspx")));

// BusinessLogic.GetPageRoutes() returns a List<Route>
var dbRoutes = BusinessLogic.GetPageRoutes();

foreach (Route route in dbRoutes)
{
routes.Add(route);
}
}

附加信息

这个问题是由于缺乏关于路由的知识以及对 global.asax 的普遍不熟悉而产生的。过去,我只将 global.asax 用于极其简单的任务; DB 感觉我正在把它带到另一个层次。

最佳答案

Is it safe

什么是“安全”,为什么不安全?

路由是使用字符串构建的,代码与这些字符串的来源无关,无论是硬编码、资源文件、Web 服务、文本文件还是数据库。

只要你确保你有一些默认路由来在数据库不可用时显示错误页面,我看不出(除了第一次点击的性能损失之外)你为什么不这样做就这样。

关于c# - 从数据库记录创建路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15365625/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com