attributerouting相关内容

不带控制器后缀的控制器

根据我的设计要求,我想从我的控制器中排除后缀“Controller"并将其替换为“Resource".这样“FundsController"就会变成“FundsResource". 问题是,当我更改替换术语“控制器"时,我无法通过基于约定或属性路由来路由到我的指定操作,并收到错误消息,指出无法找到具有此名称的控制器. 我如何才能满足上述设计要求并且能够顺利布线?是基于约定还是属性路由? ..

找到多个与 URL 匹配的控制器类型.如果多个控制器上的属性路由与请求的 URL 匹配,就会发生这种情况

...你猜我是第一个问这个问题的人? 假设您有以下路由,每个路由都在不同的控制器上声明: [HttpGet, Route("注册/注册", Order = 1)][HttpGet, Route("sign-up/{ticket}", Order = 2)] ...您可以在 MVC 5.0 中使用相同的代码执行此操作,但 Order 参数除外.但是升级到MVC 5.1之后,你得到了问题标题 ..

MVC 属性路由不起作用

我对 MVC 框架比较陌生,但我确实有一个功能强大的 Web 项目,其中有一个使用 AttributeRouting(NuGet 包)的 API 控制器——但是,我正在启动另一个项目,它只是不想遵循路由我安排好了. 控制器: 公共类 BlazrController : ApiController{私有只读 BlazrDBContext dbContext = null;私有只读 IAuth ..
发布时间:2021-12-20 13:06:52 C#/.NET

RoutePrefix 与路由

我了解 RoutePrefix 本身不会向路由表添加路由.在您的操作中,您需要声明一个 Route 属性.我很难找到一个权威的博客/msdn 页面/一些说明为什么默认 RoutePrefix 不向路由表添加路由的内容. 有没有人有一个权威的帖子确实包含这种情况,如果有,你让我知道是谁.非常感谢. 编辑澄清我的问题 不起作用 [RoutePrefix(“api/Steve")]公 ..

AttributeRouting 不适用于 HttpConfiguration 对象来编写集成测试

我正在按照此处概述的想法创建一些集成测试:http://www.strathweb.com/2012/06/asp-net-web-api-integration-testing-with-in-memory-hosting/ 当我尝试从手工制作的 HttpConfiguration 对象注册路由时,出现以下错误:“具有路由模板 'api/Contacts/{id}' 的路由上的约束条目 ' ..

ASP.NET Web API 中带有可选参数的属性路由

我正在尝试使用 Web API 2 属性路由来设置自定义 API.我已经让我的路线工作,以便我的函数被调用,但出于某种原因,我需要传入我的第一个参数才能正常工作.以下是我想要支持的网址: http://mysite/api/servicename/parameter1http://mysite/api/servicename/parameter1?parameter2=value2http:// ..

带斜杠“/"的路由参数在网址中

我知道您可以在路由属性中应用通配符以允许 / 例如日期输入: [Route("orders/{*orderdate}")] 通配符的问题只适用于URI中的最后一个参数.如果想拥有以下 URI,我该如何解决这个问题: [Route("orders/{orderdate}/customers")] 更新: 我知道通过重构代码来解决问题的方法很少,所以请不要提供类似以下的解决方案: ..

是否可以根据 Accept 标头的媒体类型在 .NET MVC 中选择带有 AttributeRouting 的操作?

我想根据 Accept 标头中请求的媒体类型选择我的控制器的操作. 例如,我有一个名为主题的资源.其分配的路线是: GET/subjects/{subjectId:int} 通常,浏览器请求的是 text/html,这很好.默认的 Media Formatter 处理得很好. 现在,当使用指定 application/pdf 作为接受的媒体类型的接受标头访问同一路由时,我想 ..
发布时间:2021-11-24 10:22:19 C#

WebAPI 2的RoutePrefix Order替代

在WebAPI中,您可以在 RouteAttribute 中指定 Order ,以确定路由的匹配顺序.例如,以下内容将匹配/other 匹配/blah 与 GetByName 之前的 GetOther [HttpGet,Route("{name}",Order = 1)]公共字符串GetByName(字符串名称){...}[HttpGet,Route("other")]公共字符串GetOth ..
发布时间:2021-04-11 20:46:33 C#/.NET

路径参数和多种控制器类型

我有一个asp.net Web API,使用属性在控制器上进行路由.在操作级别上没有路由属性.访问资源的途径是: [Route("{id}"]公共MyApiController:ApiController{公共HttpResponseMessage Get(向导ID){//...}} 我的问题是,当我想创建搜索控制器时,我希望URL为 [Route("search")] 但这会导致 ..
发布时间:2021-04-10 19:45:47 C#/.NET

复合密钥资源REST服务

我在工作中遇到了一个问题,我找不到关于在主资源是其他资源ID的组合的资源的RESTful Web服务中执行CRUD操作的常规标准或实践的信息.我们正在使用MVC WebApi创建控制器.例如,我们有三个表: Product:PK = ProductId Part:PK = PartId ProductPartAssoc:PK =(ProductId,PartId) 一个产品可以有很 ..

多个可选参数Web API属性路由

嗨,我是属性路由的新手,不确定这是否可行. 我所拥有的是一条属性路由,它可以像这样 正常工作 [HttpGet] [Route("GetIssuesByFlag/{flag:int=3}")] public IEnumerable GetIssuesByFlag(int flag) 但是现在我想添加一些额外的可选参数来缩小搜索范围,所以我想添加2个额外的可选参数. ..