mad*_*kay 6 routing asp.net-mvc-2
我正在开发一个小型CMS以获得乐趣,作为其中的一部分,我在应用程序启动时从数据库注册路由.用户可以自己添加路线.问题是此路由存储在数据库中,因此在应用程序重新启动之前不会注册.
是否可以在没有重启应用程序的情况下重新注册路由?
如果没有,我如何按需重启应用程序?
干杯,
伊恩
不,您可以动态添加和删除路由. RouteTable.Routes只是一个RouteCollection拥有Add和Remove成员(或者,如果你愿意,Clear).
但请注意,Web服务器是多线程的,因此您需要使用RouteCollection锁定协议.特别是,这意味着GetWriteLock:
var routes = RouteTable.Routes;
var newDynamicRoute = new Route(...);
using(routes.GetWriteLock()) {
routes.Remove(dynRoute);
dynRoute = newDynamicRoute;
routes.Add(dynRoute);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1237 次 |
| 最近记录: |