Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ASP.NET MVC 3中的YUI数据表_Asp.net_Asp.net Mvc_Asp.net Mvc 2_Asp.net Mvc 3_Yui - Fatal编程技术网

ASP.NET MVC 3中的YUI数据表

ASP.NET MVC 3中的YUI数据表,asp.net,asp.net-mvc,asp.net-mvc-2,asp.net-mvc-3,yui,Asp.net,Asp.net Mvc,Asp.net Mvc 2,Asp.net Mvc 3,Yui,我正在使用ASP.NETMVC3。我试图用数据库中的数据填充YUI数据表 在我看来,我有以下代码片段: @model IEnumerable<MyProject.News> <meta http-equiv="content-type" content="text/html;charset=utf-8"> <link href="http://yui.yahooapis.com/2.8.2r1/build/reset-fonts-grids/reset-fonts

我正在使用ASP.NETMVC3。我试图用数据库中的数据填充YUI数据表

在我看来,我有以下代码片段:

@model IEnumerable<MyProject.News>

<meta http-equiv="content-type" content="text/html;charset=utf-8">
<link href="http://yui.yahooapis.com/2.8.2r1/build/reset-fonts-grids/reset-fonts-grids.css" rel="stylesheet" type="text/css">
<link href="http://yui.yahooapis.com/2.8.2r1/build/base/base-min.css" rel="stylesheet" type="text/css">
<link href="http://yui.yahooapis.com/2.8.2r1/build/button/assets/skins/sam/button.css" rel="stylesheet" type="text/css">
<link href="http://yui.yahooapis.com/2.8.2r1/build/datatable/assets/skins/sam/datatable.css" rel="stylesheet" type="text/css">
<link href="/Assets/Stylesheets/MyProject.css" rel="stylesheet" type="text/css">

<script src="http://yui.yahooapis.com/2.8.2r1/build/yahoo-dom-event/yahoo-dom-event.js" type="text/javascript"></script>
<script src="http://yui.yahooapis.com/2.8.2r1/build/element/element-min.js" type="text/javascript"></script>
<script src="http://yui.yahooapis.com/2.8.2r1/build/button/button-min.js" type="text/javascript"></script>
<script src="http://yui.yahooapis.com/2.8.2r1/build/datatable/datatable-min.js" type="text/javascript"></script>
<script src="http://yui.yahooapis.com/2.8.2r1/build/datasource/datasource-min.js" type="text/javascript"></script>
<script src="http://yui.yahooapis.com/2.8.2r1/build/connection/connection-min.js" type="text/javascript"></script>
<script src="http://yui.yahooapis.com/2.8.2r1/build/json/json-min.js" type="text/javascript"></script>
我的行动方法:

public ActionResult JsonList()
{
   IEnumerable<News> newsList = newsService.FindAll();

   return Json(newsList, JsonRequestBehavior.AllowGet);
}
public ActionResult JsonList()
{
IEnumerable newsList=newsService.FindAll();
返回Json(新闻列表,JsonRequestBehavior.AllowGet);
}
我在网格中得到的错误是:

数据错误。

不确定是什么原因造成的?

尝试以下方法:

创建封装器类:

public class JsonEncapsulatorDto<T>
{
    public IEnumerable<T> Data { get; set; }

    public T DataSingle { get; set; }
}
希望它能起作用。

试试这个:

创建封装器类:

public class JsonEncapsulatorDto<T>
{
    public IEnumerable<T> Data { get; set; }

    public T DataSingle { get; set; }
}

希望它能起作用。

谢谢。我需要这样的封装器类吗?必须在响应模式中定义resultsList。因此,如果将所有结果列表都放在json响应的根目录下,那么它将不起作用。也许您需要一些分页,并且封装器类可以转换为分页类。是的,它可以工作。谢谢你的建议。您有一个名为DataSingle的属性。这是什么时候用的?在json响应中我只有一个元素可以显示,如果你想的话,你可以删除它。你在MVC中用过很多YUI吗?如果是的话,您觉得它的易用性和性能如何?谢谢。我需要这样的封装器类吗?必须在响应模式中定义resultsList。因此,如果将所有结果列表都放在json响应的根目录下,那么它将不起作用。也许您需要一些分页,并且封装器类可以转换为分页类。是的,它可以工作。谢谢你的建议。您有一个名为DataSingle的属性。这是什么时候用的?在json响应中我只有一个元素可以显示,如果你想的话,你可以删除它。你在MVC中用过很多YUI吗?如果是的话,您觉得它的易用性和性能如何?
public class JsonEncapsulatorDto<T>
{
    public IEnumerable<T> Data { get; set; }

    public T DataSingle { get; set; }
}
public ActionResult JsonList()
{
   var data = new JsonEncapsulatorDto<News>();
   data.Data = newsService.FindAll();

   return Json(data , JsonRequestBehavior.AllowGet);
}
var grdNewsDataSource = YAHOO.util.DataSource('@Url.Action("JsonList")');
      grdNewsDataSource.responseType = YAHOO.util.DataSource.TYPE_JSON;
      grdNewsDataSource.responseSchema = {
         resultsList: 'Data',
         fields: [
            { key: 'NewsId' },
            { key: 'Title' },
            { key: 'Body' }
         ]
      };