MVC中返回json数据的两种方式

MVC里面如果直接将数据返回到前端页面,我们常用的方式就是用return view();

那么我不想直接用razor语法,毕竟razor这玩意儿实在是太难记了,还不如写ajax对接来得舒服不是

那么我们可以这么做

1.定义ActionResult,返回json,标记属性可以采用HttpPost,也可以是用HttpGet,按自己的需求来使用

 public ActionResult UpdateDownloadInJson(string deviceNames,string programNames)
        {
            string[] deviceName = deviceNames.Split(‘,‘);
            string[] programName = programNames.Split(‘,‘);
            List<DownloadViewModel> DownloadViewModelList = new List<DownloadViewModel>();
            foreach (string tempDeviceName in deviceName)
            {
                var _deviceId=deviceInfoService.FindSingle<DeviceInfo>(r => r.DeviceName == tempDeviceName).Id;
                foreach (string tempProgramName in programName)
                {
                    int _programId = publishDetailService.Set<ProgramInfo>().Where(r => r.ProgramName == tempProgramName).FirstOrDefault().Id;
                    var progress= publishDetailService.Set<DeviceMaterial>().Where(r => r.DeviceId == _deviceId && r.ProgramId == _programId).FirstOrDefault().DownProgress;
                    DownloadViewModelList.Add(new DownloadViewModel
                    {
                        DeviceId= (int)_deviceId,
                        DeviceName = tempDeviceName,
                        ProgramName = tempProgramName,
                        DownloadProgress = (int)progress
                    });
                }
            }
            return Json(new AjaxResult
            {
                Result = DoResult.Success,
                RetValue = DownloadViewModelList
            }, JsonRequestBehavior.AllowGet);
        }

2.采用JsonResult,最主要拿来处理ajax请求

[HttpPost]
        [HandlerAjaxOnly]
        public JsonResult CheckLogin(string username, string password, string code)
        {
            UserManage.LoginResult result = this.HttpContext.UserLogin(username, password, code);
            if (result == UserManage.LoginResult.Success)
            {
                return Json(new AjaxResult { Result = DoResult.Success, DubugMessage = "登陆成功。" });
            }
            else
            {
                return Json(new AjaxResult { Result = DoResult.Faild, DubugMessage = "登陆失败," + result.ToString() });
            }
        }

具体的区别后续补充,用法基本就是这样。

原文地址:https://www.cnblogs.com/yinxuejunfeng/p/9685460.html

时间: 2024-11-05 11:56:20

MVC中返回json数据的两种方式的相关文章

Spring MVC中返回JSON数据的几种方式

我们都知道Spring MVC 的Controller方法中默认可以返回ModeAndView 和String 类型,返回的这两种类型数据是被DispatcherServlet拿来给到视图解析器进行继续处理返回页面的,而不是直接返回给客户端的.有时候我们需要发请求后让服务端直接返回一些数据,不再经过DispatcherServlet,这个时候通常有两种方式: 1.使用@ResponseBody注解 该注解的作用是把方法返回结果转成json或xml格式并进行返回,不管要返回什么类型的数据,是Str

SpringMVC中controller返回json数据的两种方法

SpringMVC中controller返回json数据的两种方法 1.jsp的ajax请求: function getJson(){ $.ajax({ type:"get", dataType:"json", url:"<%=basePath %>getJson", success:function(data){ for(var i=0;i<jsonData.length;i++){ alert("Id:"

向服务器传json数据的两种方式

接触到了向服务器传JSON数据,那么怎么把参数以JSON的形式,传到服务器呢.下面来说说,json字符串的得到方法.一共有两种方式来得到Json的字符串.当然,向服务器上传,不能传字符串,是要转成NSData的,也就是二进制的形式.这个在此不讨论,只说,怎么得到json的字符串. - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. //第一种方法,是把要传的参数

SpringMVC返回json数据的三种方式

SpringMVC返回json数据的三种方式:http://blog.csdn.net/shan9liang/article/details/42181345 上述第三种方法:可能会出现这个jar包没有的情况,引入即可,下面pom引入即可 java.lang.NoClassDefFoundError: com/fasterxml/jackson/core/JsonProcessingException

【代码笔记】向服务器传JSON数据的两种方式

一,代码. - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. //第一种方法,是把要传的参数组合成一个数组,然后由JSONKit把字典转为字符串 NSDictionary* jsonDic = [NSDictionary dictionaryWithObjectsAndKeys:@"李华",@"name",@"女&quo

spring mvc 返回json数据的三种方式

一.返回ModelAndView,其中包含map集 /* * 返回ModelAndView类型的结果 * 检查用户名的合法性,如果用户已经存在,返回false,否则返回true(返回json数据,格式为{"valid",true}) */ @RequestMapping(value = "/checkNameExistsMethod2", produces = "application/json;charset=UTF-8") //这里的prod

Asp.net Web API 返回Json对象的两种方式

这两种方式都是以HttpResponseMessage的形式返回, 方式一:以字符串的形式 var content = new StringContent("{\"FileName\": \"" + fileName + "\"}"); HttpResponseMessage response = new HttpResponseMessage() { Content = content }; response.Content

springMVC接受ajax提交表单,json数据的两种方式

作为一个初入互联网行业的小鑫鑫,在使用springMVC时发现一个好耍的东西,决定记下来,免得哪天忘了,哈哈 第一种 序列化表单,将表单数据序列化为json对象字符串 $("#submit").click(function (){ var form=$("form").serializeArray(); $.ajax({ url:"${pageContext.request.contextPath}/teacher/updateTeacher",

Spring mvc返回JSON数据的两种配置方式

1.视图解析方式 依赖包:jackson-core.jackson-databind.jackson-annotationSpring配置文件内容: <bean id="contentNegotiationManager" class="org.springframework.web.accept.ContentNegotiationManagerFactoryBean"> <property name="defaultContentTy