问题标签 [route-constraint]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 不能在 Rails 4 中多次定义根路由
我的路线文件中有以下内容:
这段代码在 Rails 3 中运行良好,但是当我在 Rails 4 中使用它时,我收到以下错误消息:
无效的路由名称,已在使用“root”(ArgumentError)。
你可能已经使用 ':as' 选项定义了两条同名的路由
有办法解决这个问题吗?发生了什么变化?
asp.net-mvc - 多次调用自定义路由约束或在完全没有提及约束时调用
我编写了一个自定义路由,但发现它调用了未在属性路由中指定约束的 Action 方法。
并将其添加到
现在当我访问 Put() 方法时,路由约束的 Match() 方法被调用超过 1 次,最终失败。请注意,我没有在我的 Put() 属性路由中提到任何路由约束。
thread-safety - 自定义路由约束导致间歇性 404 错误
我有一个Asp.Net Core 1 RC1
应用程序,它使用自定义路由约束来控制对应用程序的访问。应用程序(托管在运行的服务器上IIS 7.5
)出现间歇性 404 错误,我怀疑这是由此路由约束引起的。在这里,您可以看到显示间歇性 404 错误的屏幕截图:
我怀疑这个问题与定义路由约束的代码不是线程安全的有关。自定义路由约束需要一个DbContext
,因为它需要检查数据库是否为路由中指定的品牌启用了应用程序,我怀疑这个DbContext
实例可能会导致问题。以下是在应用程序中定义路由的方式:
这是自定义路由约束:
任何人都可以确认此问题是由代码不是线程安全引起的,并推荐一种更改实现以使其线程安全的方法吗?
asp.net-mvc - ASP.NET MVC - 使用 RouteConstraint 为默认路由传递参数
我面临一个问题,有 2 个默认 asp.net mvc 路由(通过自定义约束应用)。我想要做的是,根据路由字典中是否提供参数来加载不同的视图。以下是我的两条路线RouteConfig.cs
/watch/Index/{title}
如果提供了标题字符串,我想打开或者只是打开我的默认路由/Main/Index
。下面是我的路由约束的实现。
在VideoTypeRouteConstraint.cs
我正在尝试检查是否RouteValueDictionary
包含 title 变量,如果是,则返回 true 以便/Watch/Index/{title}
执行 my 。
现在当我点击以下网址时它可以工作
RouteValueDictionary
包含键(标题),但其值始终为空。这就是我认为的问题所在,但我无法识别它。
这样做的整个想法是清理我的网址,SEO
当我使用单独的控制器时,这些网址要长得多。
asp.net-web-api2 - Web API 2 是否支持查询字符串参数的路由约束?
在 Web API 2 中,我可以在路由模板中放置约束;例如:
有没有办法以类似的方式约束查询字符串参数,例如format
上面的示例?
(我知道我可能可以为format
参数声明一个自定义值类型,然后[TypeConverter]
在其上定义一个无效值失败,但我首先想看看 Web API 2 的路由约束机制是否也可以用于查询字符串参数.)
asp.net-core - 带有 IOptions 的自定义 RouteContraint
有没有办法将 IOptions 传递给自定义 IRouteConstraint?我正在尝试检查应用程序设置以查看是否需要特定路线。
c# - 在 RouteConstraint 中操作 RouteValueDictionary
可以说我有一条路线;www.kunduz.com/stuff/something
其中“某事”正在根据路线约束进行检查;
让我们说东西有这样的结构
考虑到对象 Stuff 不仅是 DB 中的一个条目,而且更像是一种类型。比如,如果这是一个电子商务网站,它可能是“汽车”或“家具”。
所以我正在做的是,我正在检查“某物”是否真的是我的路线约束上的有效“东西”。然后在我的控制器中;
现在,我还能做的就是这个
并获取我作为参数添加到控制器操作中的 Id
这可能会提高性能,对我来说更有意义的是,我应该避免两次获取 Id 内容。
我的问题是,这是一个好习惯吗?由于我的 URL 不包含 sutffId,因此我的控制器操作可能会让未来查看此代码的开发人员感到困惑。
我真的很感激对这个问题的一些见解。
谢谢你。
c# - 未找到 web api 2 路由
我的路线配置看起来像这样
我将用户控制器按操作划分为单独的文件,因此所有GET
操作都在GetUserController.cs
文件中,PUT
操作在PutUserController.cs
等等......
该GET
文件有一个像这样的部分类
该PUT
文件有一个像这样的部分类
不管我做什么,我总是得到一个 404 错误。我正在使用 Postman 进行测试我正在使用Content-Type
的application/json
URL 是使用
http://localhost:52450/api/users/3F3E0740-1BCB-413A-93E9-4C9290CB2C22/locations/4F3E0740-1BCB-413A-93E9-4C9290CB2C22/list
a ,POST
因为我无法使用GET
第一种方法发布复杂类型
和
http://localhost:52450/api/users/3F3E0740-1BCB-413A-93E9-4C9290CB2C22/locations/4F3E0740-1BCB-413A-93E9-4C9290CB2C22/insert
有一个PUT
如果有的话,我还需要在路由配置中设置哪些其他路由?
编辑
奇怪的是,另一个也是部分类的控制器似乎使用相同的配置
这是连接一切的global.asax.cs 。
asp.net-mvc - 如何同时使用路由约束和属性路由?
我在我的网站中使用路由约束,现在我需要使用属性路由。
路由约束类:
对于属性路由,请使用上面的代码操作:
曾经的 Attribute Routing 和 Route Constraint 目前单独工作。但是当我一起使用时,例如这种情况下,属性路由只起作用,而路由约束不起作用。
路由配置:
如何同时使用路由约束和属性路由?