首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

.Net框架4.6.1 WebApi、属性路由和默认路由不起作用

.Net框架4.6.1是微软公司开发的一种软件开发框架,用于构建Windows平台上的应用程序。它提供了一系列的类库和工具,使开发人员能够快速、高效地开发各种类型的应用程序,包括Web应用程序、桌面应用程序和移动应用程序等。

WebApi是.Net框架中的一个组件,用于构建基于HTTP协议的Web服务。它提供了一种简单、灵活的方式来创建和发布Web API,使开发人员能够轻松地构建RESTful风格的服务。WebApi支持属性路由和默认路由来定义API的路由规则。

属性路由是一种基于属性的路由方式,通过在控制器或动作方法上添加特定的属性来定义路由规则。开发人员可以使用特定的路由属性来指定API的URL模板、HTTP方法和其他路由参数。这样可以更直观地定义API的路由规则,使代码更易于理解和维护。

默认路由是一种基于约定的路由方式,它使用默认的路由规则来映射URL到控制器和动作方法。默认路由规则通常包括控制器名称、动作方法名称和可选的参数等信息。开发人员可以通过配置默认路由规则来定义API的路由规则。

如果在.Net框架4.6.1中使用WebApi时属性路由和默认路由不起作用,可能是由于以下原因:

  1. 未正确配置路由:在使用属性路由或默认路由时,需要在应用程序的配置文件中正确配置路由规则。开发人员需要确保已经正确地配置了路由规则,并且没有其他配置或代码覆盖了这些路由规则。
  2. 控制器或动作方法未正确标记:在使用属性路由时,需要确保控制器或动作方法已经正确地标记了相应的路由属性。开发人员需要检查代码,确保已经正确地添加了属性路由相关的属性。
  3. 版本兼容性问题:不同版本的.Net框架和WebApi可能存在一些兼容性问题。如果属性路由和默认路由在特定版本的.Net框架4.6.1中不起作用,可以尝试升级到最新版本的.Net框架和WebApi,以解决可能存在的兼容性问题。

对于这个问题,腾讯云提供了一系列的云计算产品和服务,可以帮助开发人员构建和部署基于.Net框架的应用程序。其中包括云服务器、云数据库、云存储、人工智能服务等。具体推荐的产品和产品介绍链接地址可以参考腾讯云的官方文档或咨询腾讯云的技术支持团队。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

.NET Core 学习资料精选:入门

#、.NET Core提供的特性 1.开源、免费 2.轻量级、跨平台 3.组件化、模块化、IOC+Nuget、中间件 4.高性能 5.统一了MVCWebAPI编程模型 a) 比如:ASP.NET Core...如果需要进行旧项目升级的,可以参考文章:《.NET项目迁移到.NET Core操作指南》 VS.NET Core安装 VS2019安装教学 VS2019正式版注册码秘钥 修改nuget包默认存放路径,...NET Core 过时的运行时 SDK [坑]安装 .Net Core 2.2 SDK后,VS2017依然不能设置core2.2为目标框架 基础 ASP.NET Core开发者路线指南 微软官方 asp.net...Core WebAPI中,Controller标注 [ApiController] 特性,其路由只能使用[route]特性方式 ASP.NET Core MVC 构建可读性更高的ASP.NET Core...ConfigureServices(IServiceCollection services) { // 第一步:替换系统默认Controller创建器(否则Controller下面无法使用属性注入

3.8K20

Asp.Net WebApi核心对象解析(一)

一.WebApi概述:      ASP.NET Web API是在.NET Framework之上构建的Web的API的框架,ASP.NET Web API是一个编程接口,用于操作可通过标准HTTP...ASP.NET WebAPI使用HTTP方法,而不是URI路径,以此来选择动作。还可以使用MVC样式路由WebAPI。...在ASP.NET Web API中,一个控制器是处理HTTP请求的类。控制器的公共方法被称为动作方法或简单的动作。当Web API框架接收到一个请求,它请求路由到一个动作。...要确定调用哪个动作,框架使用的路由表。...属性分别用于设置获取HttpRequestMessage对象RequestContext对象,     ASP.NET Web API除了可以根据HTTP方法来选择操作方法,还可以根据请求的其他元素选择操作方法

4.4K70
  • ASP.NET Core 6框架揭秘实例演示:基于路由、MVCgRPC的应用开发

    ASP.NET Core可以视为一种底层框架,它为我们构建出了基于管道的请求处理模型,这个管道由一个服务器多个中间件构成,而与路由相关的EndpointRoutingMiddlewareEndpointMiddleware...MVCgRPC开发框架就建立在路由基础上。本篇提供了四个实例用来演示如何利用路由、MVCgRPC来开发API/APP。...(本篇提供的实例已经汇总到《ASP.NET Core 6框架揭秘-实例演示版》) [113]路由的应用(源代码) [114]开发MVC API(源代码) [115]开发MVC APP(源代码) [...,在所有预定义的中间件类中,这应该算是最重要的两个中间件了,因为不仅仅是MVCgRPC框架建立在路由系统之上,后面介绍的Dapr.NET针对发布订阅Actor编程模式也是如此。...路由系统针对返回对象的处理方式一样,MVC框架针对Action方法的返回值也会根据其类型进行针对性的处理。

    98730

    .net 温故知新【11】:Asp.Net Core WebAPI 入门使用及介绍

    在Asp.Net Core 上面由于现在前后端分离已经是趋势,所以asp.net core MVC用的没有那么多,主要以WebApi作为学习目标。...一、创建一个WebApi项目 我使用的是VS2022, .Net 7版本。...它非常适合于需要在 ASP.NET Core 中仅包括最少文件、功能依赖项的微服务应用。...也就是说路由属性配置了路由,如上图请求时的路由https://localhost:7122/WeatherForecast,配置中“[controller]”为标记替换,为方便起见,属性路由支持标记替换...日志记录 日志记录是基础知识点,这部分内容在我们之前温故知新中已经详细介绍过,可移步了解:.net 温故知新:【9】.NET日志记录 ILogger使用原理 以上为我们入门WebApi创建的一个默认项目

    1.9K30

    在一个空ASP.NET Web项目上创建一个ASP.NET Web API 2.0应用

    GlobalConfiguration的静态属性Configuration返回一个代表当前配置的HttpConfiguration对象,全局路由表就注册在它的Routes属性上。...但是IIS在默认情况下并不提供针对 PUTDELETE请求的支持。...虽然这仅仅是一个简单的Web应用,但是我刻意使用了3个主流的Web前端开发框架,它们分别是jQuery、BootstrapKnockOut,这三个框架的使用体现在页面引用的CSSJavaScript...Bootstrap是ASP.NET MVC 5默认支持的框架,当我们利用Visual Stduio创建一个ASP.NET MVC项目时,项目目录下就包含了Bootstrap相关的CSSJavaScript...在本例中,我们主要利用jQuery来实现以Ajax方式调用Web API,同时它也是其他两个框架(BootstrapKnockOut)的基础框架

    4.5K110

    MVCWebapi的区别

    从使用上区分 Mvc主要用于构建网站,在后端实现了一套完整的MVC开发框架默认使用Razor视图引擎。...从自身实现上区分 两种框架主要是在Asp.Net的基础上进行改造,主要是对HttpModuleHttpHandler做了扩展,但是实现思路不一样。...Mvc像是在一层上建了第二层,引伸出更强大的路由机制,实现了诸如MvcHandlerControllerFactory这种消息处理后台控制器方法选择机制。...Webapi除了扩展了前者以外,另外写出了一套独立的,独立于Asp.Net的消息处理管道,就像是借鉴原来房子的模型,重新设计出了另外一套别墅。...这两种框架最多只能说是模式上类似,实现上还是有很大差别的。 从部署角度区分 MVC只能寄宿于IIS上(不考虑.net core),就像Webform的寄宿方式。

    3.2K20

    ASP.NET Core 实战:构建带有版本控制的 API 接口

    Swagger 是一个可以将接口文档自动生成,同时可以对接口功能进行测试的开源框架,在 ASP.NET Core 环境下,主流的有 Swashbuckle.AspNetCore NSwag 这两个开源框架帮助我们生成...在框架生成的 Program 类文件中,在配置 IWebHostBuilder 的过程时,框架默认为我们添加了一些服务,当然,这里你可以注释掉默认的写法,去自己创建一个 WebHostBuilder 对象...通过为 controller action 添加另一个路由参数 area,从而达到创建具有层次路由的结构。...); });   当我们添加好路由规则定义后,我们在 Area 的 Controllers 文件夹下添加一个 WebAPI Controller。...因为我采用的方案是在 Url 中指明 API 版本,所以,我们还需要在 Route 中修改我们的路由属性以对应 API 的版本。这里的 v 只是一个默认的惯例,你也可以不添加。

    1.2K30

    ASP.NET Web API路由系统:路由系统的几个核心类型

    System.Web.dll程序集的依赖,实现在ASP.NET Web API框架中的URL路由系统亦是如此。...也就是说,ASP.NET Web API核心框架的URL路由系统与ASP.NET本身的路由系统是相对独立的。...我们先来讨论一下实现在ASP.NET Web API框架中这个独立的路由系统是如何设计的。...当ASP.NET Web API框架实施约束检验的时候,已经通过URL模板匹配得到了所有的路由变量值,参数values表示的字典对象存放了这些路由变量,其KeyValue分别代表路由变量的名称值。...两个字典类型的只读属性ConstraintsDefaults表示为路由变量定义的约束默认值,字典的KeyValue分别表示变量名称和约束/默认值。

    9.5K110

    快速入门系列--WebAPI--04在老版本MVC4下的调整

    WebAPI v1.0(ASP.NET MVC4在一起的版本)很多的类接口并不存在,同时对Task异步编程(ApiController默认提供异步执行方法)的支持还有一些欠缺(缺少不少方便的扩展方法...路由设置 在Global.asax文件中需要注意WebApi路由要先于MVC的路由进行注册,不然会出现路由无效的情况。...前者包括针对数组、集合、字典、简单复杂类型的绑定器,后者其实就是一个序列化器,默认包括3中:Json.NET的json序列化器(用的最多);DataContractSerializerXMLSerializer...通过ITraceWriter来跟踪应用程序,可以很方便的ETW、Log4net、ELMAH等跟踪服务集成。...快速入门系列--WebAPI--01基础 快速入门系列--WebAPI--02进阶 快速入门系列--WebAPI--03框架你值得拥有 快速入门系列--WebAPI--04在老版本MVC4下的调整 参考资料

    1.1K60

    从 MVC 到使用 ASP.NET Core 6.0 的Minimal API

    后来,在 ASP.NET Core 中,用于构建网站 API 的单一框架,这些框架被统一到了 ASP.NET Core MVC 中。...在 ASP.NET Core MVC 应用程序中,控制器负责接受输入、执行或编排操作并返回响应。它是一个功能齐全的框架,通过过滤器、内置模型绑定验证、约定基于声明的行为等提供可扩展的管道。...定义路由处理程序 MVC 在 MVC 中,我们有两种[2]定义路由的方法,一种是通过约定,一种是使用属性。 基于约定的路由更常用于网站而不是 API,并包含在mvc模板中。...; 所述pattern指定路线的不同区段,并且允许指定的默认值。参数可以利用 ASP.NET路由约束语法[3]来限制接受的值。 对于 API,建议使用基于属性路由[4]。...上面的示例来自默认webapi模板,演示了路由令牌替换。

    7.5K10

    【开源】NodeJS仿WebApi路由

    用过WebApi或Asp.net MVC的都知道微软的路由设计得非常好,十分方便,也十分灵活。虽然个人看来是有的太灵活了,team内的不同开发很容易使用不同的路由方式而显得有点混乱。...不过这不是重点,我在做Node项目的时候就觉得不停的用use(...)来指定路由路径很烦人,所以用Typescript写了这个基于KoaKoa-router的路由插件,可以简单实现一些类似WebApi...目标是WebApi一样: 加入的controller会自动加入路由。 也可以通过path()手动指定路由。 可以定义http method, 如GET或POST等。...包已经上传到npm中,npm install webapi-router 安装,可以先看看效果: 第一步,先设置controllers的目录url的固定前缀 所有的controller都在这目录下,这样会根据物理路径自动算出路由...绑定路由到Koa-router上 上面从物理路径得到了路由,但是是以装饰里的参数路径优先,所以先看看刚在存在原型里的Router属性里有没有Path,有的话就用这个作为路由,没有Path就用物理路由

    831100

    Asp.Net Web API 2第六课——Web API路由动作选择

    这个框架不会匹配URI另外的部分,例如主机名或者一个查询字符串。这个框架会选择路由表中第一个匹配的路由。 这里有两个特殊的占位符:“{controller}”“{action}”。...“{category}”片段被赋成了默认值“all”。 Route Dictionary(路由字典)   如果这个框架发现了一个匹配的URI,它会创建包含每个占位符值的一个字典。...HTTP Methods 这个框架只会选择与请求的HTTP方法匹配的动作,确定如下:   1.你可以用注解属性AcceptVerbs、HttpDelete、HttpGet、HttpHead、HttpOptions...简单类型包括所有“.NET框架简单类型”,另外还有,DateTime、Decimal、Guid、StringTimeSpan。对于每一个动作,最多只有一个参数可以读取请求正文。...它也可以重写这种默认的绑定规则。See WebAPI Parameter binding under the hood。

    95420
    领券