作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图在我的一个 Controller 方法中允许空值。它看起来像这样:
[Route("items/type/{catalogTypeId}/brand/{catalogBrandId}")]
public async Task<IActionResult> Items(int? catalogTypeId, int? catalogBrandId, [FromQuery] int pageSize = 6, [FromQuery] int pageIndex = 0)
当我尝试邮寄 items/type/1/brand/null?pageSize=6&pageIndex=0
时,它给我一个错误 400
"The value 'null' is not valid".
我将如何允许空值?
最佳答案
使路由模板参数可选 {catalogBrandId?}
[Route("items/type/{catalogTypeId}/brand/{catalogBrandId?}")]
public async Task<IActionResult> Items(int? catalogTypeId, int? catalogBrandId = null, [FromQuery] int pageSize = 6, [FromQuery] int pageIndex = 0)
并将其从 URL 中排除
items/type/1/brand?pageSize=6&pageIndex=0
您实际上应该使用多个路由来获得更清晰的 URL
[Route("items")]
[Route("items/type/{catalogTypeId}")]
[Route("items/type/{catalogTypeId}/brand/{catalogBrandId}")]
public async Task<IActionResult> Items(int? catalogTypeId = null, int? catalogBrandId = null, [FromQuery] int pageSize = 6, [FromQuery] int pageIndex = 0)
请注意,模板不再是可选的,但操作中的参数是可选的。
这将允许
items?pageSize=6&pageIndex=0
items/type/1?pageSize=6&pageIndex=0
items/type/1/brand/2?pageSize=6&pageIndex=0
关于c# - 如何让可选的路由参数允许为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55496515/
我正在尝试用 Swift 编写这段 JavaScript 代码:k_combinations 到目前为止,我在 Swift 中有这个: import Foundation import Cocoa e
我是一名优秀的程序员,十分优秀!