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

ASP.NET Core 2.2 : 二十. Action多种数据返回格式处理机制

上一章讲了系统如何将客户端提交请求数据格式化处理成我们想要格式并绑定到对应参数,本章讲一下它“逆过程”,如何将请求结果按照客户端想要格式返回去。...(ASP.NET Core 系列目录) 一、常见返回类型 以系统模板默认生成Home/Index这个Action来说,为什么当请求它时候回返回一个Html页面呢?...第三行ActionResult 类型是在ASP.NET Core 2.1 引入,它支持IActionResult子类也支持类似string和Book这样特定类型。...所以图 2中ActionResult 类型返回结果被加上引号意思就是结果类型可能是直接返回IActionResult子类,也有可能是string和Book这样特定类型被封装ObjectResult...所以这个IActionResult类型参数result实际上可能是JsonResult、ViewResult、EmptyResult等具体类型

1.5K30

小范笔记:ASP.NET Core API 基础知识与Axios前端提交数据

] 当前请求中路由数据 [FromServices] 作为操作参数插入请求服务 来一张 Postman 图片: HTTP 请求中,会携带很多参数,这些参数可以在前端设置,例如表单、Header、...注意:本文全部使用 [HttpPost] ;全局使用 JsonResult 作为返回类型。 二....res 是请求成功返回信息,res.data 是请求成功服务器返回信息。即是 action 处理数据返回信息。...ASP.NET Core 自动生成可读写 Controller ,默认都是使用 [Bind] 来绑定数据。 文档定义:用于对复杂类型模型绑定。...2, 返回数据类型 特定类型 IActionResult 类型 ActionResult 类型 Action return ,返回数据类型必定是上面三种。

5.5K00
您找到你想要的搜索结果了吗?
是的
没有找到

ASP.NET Core 入门教程 4、ASP.NET Core MVC控制器入门

MVC控制器操作简介返回类型示例 ASP.NET Core MVC控制器参数映射逻辑说明 ASP.NET Core MVC控制器参数映射/获取示例 2、本教程环境信息 软件/环境 说明 操作系统 Windows...Controller接收到请求根据路由ActionName找到对应Action,然后将用户输入映射到该Action参数,最终Action实际执行完成返回对应输出。...不过在定义Action方法时候,返回类型也可以定义成string、int等,这些自定义返回类型会在返回到响应流之前被框架自动包装到合适ActionResult类型中。...使用示例 定义返回JsonResultAction public IActionResult JsonTest() { return Json(new { Message = "JsonResult...如果未找到参数对应数据,且该参数类型是可以为null类型,则null将作为参数值传递递,否则将会引发一场。

1.9K10

ASP.NET Core 入门教程 4、ASP.NET Core MVC控制器入门

MVC控制器操作简介返回类型示例 ASP.NET Core MVC控制器参数映射逻辑说明 ASP.NET Core MVC控制器参数映射/获取示例 2、本教程环境信息 软件/环境 说明 操作系统 Windows...Controller接收到请求根据路由ActionName找到对应Action,然后将用户输入映射到该Action参数,最终Action实际执行完成返回对应输出。...不过在定义Action方法时候,返回类型也可以定义成string、int等,这些自定义返回类型会在返回到响应流之前被框架自动包装到合适ActionResult类型中。...使用示例 定义返回JsonResultAction public IActionResult JsonTest() { return Json(new { Message = "JsonResult...如果未找到参数对应数据,且该参数类型是可以为null类型,则null将作为参数值传递递,否则将会引发一场。

2.2K40

了解ASP.NET MVC几种ActionResult本质:JavaScriptResult & JsonResult

本篇文章着重介绍在进行Ajax调用中经常使用两个ActionResult,即JavaScriptResult和JsonResult。[本文已经同步到《How ASP.NET MVC Works?》...返回类型为JavaScriptResultAction方法一般用于处理Ajax请求。...但是对于后台程序来说,数据却是通过一个基于某种CLR类型对象来承载,当客户端调用某个Action方法并希望以JSON格式返回请求数据时,ASP.NET MVC需要有一种机制将CLR对象转换成JSON...,JsonResult在默认情况下不能作为对HTTP-GET请求响应,在这种情况下并会直接抛出一个InvalidOperationException异常。...了解ASP.NET MVC几种ActionResult本质:FileResult 了解ASP.NET MVC几种ActionResult本质:JavaScriptResult & JsonResult

1.7K80

了解ASP.NET MVC几种ActionResult本质:EmptyResult & ContentResult

本篇文章着重介绍在进行Ajax调用中经常使用两个ActionResult,即JavaScriptResult和JsonResult。[本文已经同步到《How ASP.NET MVC Works?》...返回类型为JavaScriptResultAction方法一般用于处理Ajax请求。...但是对于后台程序来说,数据却是通过一个基于某种CLR类型对象来承载,当客户端调用某个Action方法并希望以JSON格式返回请求数据时,ASP.NET MVC需要有一种机制将CLR对象转换成JSON...,JsonResult在默认情况下不能作为对HTTP-GET请求响应,在这种情况下并会直接抛出一个InvalidOperationException异常。...了解ASP.NET MVC几种ActionResult本质:FileResult 了解ASP.NET MVC几种ActionResult本质:JavaScriptResult & JsonResult

1.7K50

ASP.Net请求处理机制初步探索之旅 - Part 5 ASP.Net MVC请求处理流程

这里我们选择ASP.NET MVC 4源码作为分析对象,我已经将其上传到了网盘中,你可以通过下面这个地址进行下载:   传送门:http://pan.baidu.com/s/1bnF8ZPt   下载完成...Action并获取所需参数,然后调用InvokeActionMethodWithFilters方法执行Action。...转到定义一看,原来不就是我们在开发中经常返回ActionResult类型吗?...,然后获得了一个returnValue返回值,通过传入返回值创建具体类型ActionResult作为方法返回值。...这里需要注意是,ActionResult是一个抽象类,像什么JsonResult、EmptyResult、ViewResult等都是其子类,而这里CreateActionResult就是要创建其具体子类实例并返回

1.1K30

ASP.NET MVC编程——控制器

每一个请求都会经过控制器处理,控制器中每个方法被称为控制器操作,它处理具体请求。 1操作输入参数 控制器操作输入参数可以是内置类型也可以是自定义类型。...View 指定视图 EmptyResult 无 不返回任何内容 上述返回类型均继承自ActionResult,除了上述类型外,控制器可以返回任意类型!...,使用新名称作为路由参数,方可路由到该操作 例: [ActionName("AboutName")] public ActionResult About() { ...... } 11)NonActionAttribute...从线程池获得线程处理异步请求,异步调用完,该线程回到线程池以便可以处理其他请求,同时通知ASP.NET重新抓取一个线程(不一定是处理异步请求线程)来完成具体异步操作(输出数据等)。...:OnActionExecuted 操作执行前被框架自动调用方法:OnActionExecuting 返回结果被框架自动调用方法:OnResultExecuted 返回结果前被框架自动调用方法:

2.1K90

使用 C# 9 records作为类型ID - 路由和查询参数

上一篇文章,我介绍了使用 C# 9 record类型作为类型id,非常简洁 public record ProductId(int Value); 但是在强类型id真正可用之前,还有一些问题需要解决...,比如,ASP.NET Core并不知道如何在路由参数或查询字符串参数中正确处理它们,在这篇文章中,我将展示如何解决这个问题。...415,.NET Core 不知道怎么把URL参数转换为ProductId,由于它不是int,是我们定义类型ID,并且没有关联类型转换器。...通用强类型id转换器 首先,让我们创建一个Helper •检查类型是否为强类型ID,并获取类型获取值得类型,创建并缓存一个委托 public static class StronglyTypedIdHelper...; } } 到这里,我们可以直接删除之前 ProductIdConvert, 现在有一个通用可以使用,现在.NET Core 路由匹配已经没有问题了,接下来文章,我会介绍如何处理在JSON

1.9K20

ASP.Net MVC开发基础学习笔记:三、Razor视图引擎、控制器与路由机制学习

1.2 Razor语法   (1)Razor文件类型:Razor支持两种文件类型,分别是.cshtml 和.vbhtml,其中.cshtml 服务器代码使用了c#语法,.vbhtml 服务器代码使用了...这样就解释了,我们在Action中可以不仅可以返回ViewResult还可以返回JsonResult原因。通过下表,我们可以清晰地看到,ActionResult各种派生类详情: ?   ...特别是,以前我们在WebForm时代常常与浏览器交互采用JSON格式数据,需要使用JavaScriptSerializer这个类进行Serialize返回。...但是,在MVCAction中,微软已经帮我们封装了好了JsonResult,因此,我们可以高兴地感慨:返回Json,So Easy!...②url参数:   url获取数据规则,这里不是正则表达式,将要识别的参数括起来即可,比如: {controller}/{action}   最少只需要传递name和url参数就可以建立一条Routing

1.7K30

模拟ASP.NET Core MVC设计与实现

接下来,我同样使用简单代码构建一个Mini版MVC框架,让大家了解一下ASP.NET Core MVC背后总体设计,以及针对请求处理流程。[源代码从这里下载]。...我们利用MethodInfo声明类型得到Controller类型,将剔除“Controller”后缀类型名称作为ControllerName属性(表示Controller名称),作为Action...该方法返回类型为ValueTask,泛型参数代表object就是执行Action方法得到返回值(对于返回类型为void方法,这个值总是Null)。...>对象(具体返回是一个JsonResult对象)。...我们使用Fiddler向路径“/baz”发送一个POST请求来访问Action方法Baz,我们将请求主体内容设置为基于Result类型JSON字符串,我们提供IArgumentBinder对象利用发序列化请求主体形式绑定其参数

26330

ABP入门系列(8)——Json格式化

Mvc中JsonResult Asp.net mvc中默认提供了JsonResult来处理需要返回Json格式数据情况。...一般我们可以这样使用: public ActionResult Movies() { var movies = new List(); movies.Add(new {...不包含成功失败信息:如果我们要判断请求是否成功,我们要手动通过获取json数据包length获取返回日期未格式化,在前端还需自行格式化输出。...:是否缩进(默认为false,即未格式化) 并在AbpController中重载了ControllerJson()方法,强制所有返回Json格式数据为AbpJsonResult类型,并提供了AbpJson...总结 本节主要讲解了以下几个问题: Asp.netJsonResult实现。 ABP对JsonResult再封装,支持指定大小驼峰及是否缩进进行Json格式化。

1.7K90

ASP.NET MVC 行为详解

方式二:自动装配,在方法参数位置,定义类型参数名称,mvc会自动匹配相同名称属性值,即匹配inputname与对象属性相同名称值。 ?...还可以完成自定义类型参数封装 ?...自动装配要求:参数名称或对象类型属性必须与参数键相同 返回结果 返回类型ActionResult,是一个抽象类,需要返回具体类型结果对象 直接或间接继承自ActionResult类型 ViewResult...:使用View()可以指定一个页面,也可以指定传递模型对象,如果没有指定参数则表示返回与Action同名页面。...RedirectResult:使用Redirect(string url)将结果转到其他Action JsonResult使用Json(object data) 将data序列化为json数据并返回

64840

从头编写 asp.net core 2.0 web api 基础框架 (1)

当然也可以单独使用kestrel作为web 服务器, 但是使用iis作为reverse proxy还是由很多有点: 例如,IIS可以过滤请求, 管理证书, 程序崩溃时自动重启等....返回Status Code 目前我们返回JsonResult继承与ActionResult, ActionResult实现了IActionResult接口....因为web api不一定返回都是json类型数据, 也不一定只返回一堆json(可能还要包含其他内容). 所以JsonResult并不合适作为Action返回结果....结果格式 asp.net core 2.0 默认返回结果格式是Json, 并使用json.net对结果默认做了camel case转化(大概可理解为首字母小写). ...设置header为xml,返回还是json, 这是因为asp.net core 默认只实现了json.

2K70

ASP.NET MVC5中View-Controller间数据传递

使用ASP.NET MVC做开发时,经常需要在页面(View)和控制器(Controller)之间传递数据,那么都有哪些数据传递方式呢?...获取路由参数另外一种方式是给Action设置一个和路由模板中指定参数名一致(不区分大小写)参数即可,代码如下: public void GetValue(int id) { } 注意,这里不仅获取了路由数据...username, int age) { } 在Action中成功获取到了对应参数值,且数据类型也根据Action中参数类型进行了相应转换。...Json public ActionResult Index() { return View(); } public JsonResult SendData() { return Json...ExpandoObject 上面提到,直接使用匿名类型向View中传递数据是行不通,可以使用ExpandoObject类型对象来替代匿名类型 public ActionResult Index() {

2.7K10
领券