| | |
| | | List<Dt_Router> routers = new List<Dt_Router>(); |
| | | try |
| | | { |
| | | // 从缓存加载入口类型的所有路由数据 |
| | | List<Dt_Router> allRouters = GetAllRoutersFromCache(RouterInOutType.In.ObjToInt()); |
| | | // 从缓存加载出口类型的所有路由数据 |
| | | List<Dt_Router> outRouters = GetAllRoutersFromCache(RouterInOutType.Out.ObjToInt()); |
| | | // 合并入口和出口路由数据 |
| | | allRouters.AddRange(outRouters); |
| | | // 从缓存加载入口类型和出口类型的路由数据并合并(创建新列表,避免修改缓存引用) |
| | | List<Dt_Router> allRouters = GetAllRoutersFromCache(RouterInOutType.In.ObjToInt()) |
| | | .Concat(GetAllRoutersFromCache(RouterInOutType.Out.ObjToInt())) |
| | | .ToList(); |
| | | |
| | | // 在内存中进行路径搜索 |
| | | routers = FindRoutesInMemory(startPosi, endPosi, allRouters, null); |