详解mvc使用JsonResult返回Json数据

2025-05-29 0 21

controller 中定义以下方法:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29
public JsonResult UpdateSingle(int id, string actionName, string actionValue)

{

var res = new JsonResult();

//var value = "actionValue";

//db.ContextOptions.ProxyCreationEnabled = false;

var list = (from a in db.Articles

select new

{

name = a.ArtTitle,

yy = a.ArtPublishTime

}).Take(5);

//记得这里要select new 否则会报错:序列化类型 System.Data.Entity.DynamicProxies XXXXX 的对象时检测到循环引用。

//不select new 也行的加上这句 //db.ContextOptions.ProxyCreationEnabled = false;

res.Data = list;//返回列表

var name = "小华";

var age = "12";

var name1 = "小华";

var age1 = "12";

res.Data = new object[] { new { name, age }, new { name1, age1 } };//返回一个自定义的object数组

var person = new { Name = "小明", Age = 22, Sex = "男" };

res.Data = person;//返回单个对象;

res.Data = "这是个字符串";//返回一个字符串,意义不大;

res.JsonRequestBehavior = JsonRequestBehavior.AllowGet;//允许使用GET方式获取,否则用GET获取是会报错。

return res;

}

页面调用:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23
<a href="javascript:void(0);" onclick="javascript:upclick(this);">Click Me</a>

<script type="text/javascript">

function upclick(o) {

var obj = $(o);

alert(obj);

$.ajax({

url: "/Articles/UpdateSingle?ran=" + Math.random(),

type: "GET",

dataType: "json",

data: { id: obj.attr("id"), actionName: obj.attr("actionName"), actionValue: obj.attr("actionValue") },

success: function (data) {

// if (data.result == "True") {

// alert("修改成功!");

// }

// if (obj.attr("actionName") == "ArtVerify") {

// }

$(o).html(data[0].name);

obj.attr("actionValue", data[0].result);

}

})

}

</script>

以上是在mvc中使用,在webform中怎么使用呢?

在webform中要引用Newtonsoft.Json.dll;

当然你也可以自己拼接字符串。

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19
protected void Page_Load(object sender, EventArgs e)

{

var customer = new customer { name = "李华", sex = "男" };

var customer1 = new customer { name = "小芳", sex = "女" };

var li = new List<customer>();

li.Add(customer);

li.Add(customer1);

var list = Newtonsoft.Json.JavaScriptConvert.SerializeObject(li);

var tt = "[{\\"name\\":\\"李华\\",\\"sex\\":\\"男\\"},{\\"name\\":\\"小芳\\",\\"sex\\":\\"女\\"}]";

//new Newtonsoft.Json.JsonSerializer()..(customer);

Response.Write(tt);

Response.End();

}

public class customer

{

public string name { get; set; }

public string sex { get; set; }

}

页面方法:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20
<p>

<a href="javascript:void(0)" onclick="javascript:getJsonData();">GetJsonData</a>

</p>

<div id="dataDiv">

ggg

</div>

<script type="text/javascript">

function getJsonData() {

var str = "";

$.getJSON("/Json.aspx", function (data) {

var tt = "";

$.each(data, function (k, v) {

$.each(v, function (kk, vv) {

tt += kk + ":" + vv + "<br/>";

});

});

$("#dataDiv").html(tt);

});

}

</script>

显示结果:

详解mvc使用JsonResult返回Json数据

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持快网idc。

原文链接:http://blog.csdn.net/weizengxun/article/details/6845455

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 详解mvc使用JsonResult返回Json数据 https://www.kuaiidc.com/99720.html

相关文章

发表评论
暂无评论