如何解决如何从MVC返回JSON数据?
| 我目前正在返回这样的JSON数据:return new JsonResult {
Data = from service in _serviceTable.GetAll(
u => u.PartitionKey == \"1Z0-851\" &
u.RowKey.Compareto(lowerBound) >= 0 &
u.RowKey.Compareto(upperBound) < 0)
select new {
service.PartitionKey,service.RowKey,service.TopicDescription,service.SubTopicDescription,service.Weight,service.Format,service.Style,service.ShortTitle }
};
效果很好,但现在我想返回一些数据以指示状态。我尝试通过以下方式将其添加为,状态:
ShortTitle },Status = \"abc\"
};
但我收到语法错误消息,说“不包含状态定义
有人可以希望解释一下我如何添加状态并将其发送回我的网页。请注意,serviceTable中有很多行,但只有一种状态可以发回。
解决方法
return new JsonResult {
Data = new {Result=(from service in _serviceTable.GetAll(
u => u.PartitionKey == \"1Z0-851\" &
u.RowKey.CompareTo(lowerBound) >= 0 &
u.RowKey.CompareTo(upperBound) < 0)
select new {
service.PartitionKey,service.RowKey,service.TopicDescription,service.SubTopicDescription,service.Weight,service.Format,service.Style,service.ShortTitle}),Status=\"abc\"}
};
请检查语法,但是您会明白的。
要访问数据,您必须使用诸如data.Result和data.Status之类的状态。
, 您可以这样做,并使用几个中间变量(and3ѭ可以轻松处理匿名类型)来清理一下:
var service = from service in _serviceTable.GetAll(
u => u.PartitionKey == \"1Z0-851\" &
u.RowKey.CompareTo(lowerBound) >= 0 &
u.RowKey.CompareTo(upperBound) < 0)
select new {
service.PartitionKey,service.ShortTitle });
var status = \"abc\";
var result = new {
Service = service,Status = status
};
return Json(result);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。