Linq到Javascript数组
我对javascript还不熟悉,在思考一个我正在遇到的问题时遇到了一些问题。我试图将一个列表传递到一个javascript文件中,该文件包含一个名为Grid.js的datagrid 如何将C列表转换为javascript的正确格式?另外,如何将js数组从模型传递到脚本 控制器:Linq到Javascript数组,javascript,c#,asp.net-mvc,ignite-ui,iggrid,Javascript,C#,Asp.net Mvc,Ignite Ui,Iggrid,我对javascript还不熟悉,在思考一个我正在遇到的问题时遇到了一些问题。我试图将一个列表传递到一个javascript文件中,该文件包含一个名为Grid.js的datagrid 如何将C列表转换为javascript的正确格式?另外,如何将js数组从模型传递到脚本 控制器: Products = (from product context.Products select new project.Models.ProductsList {
Products = (from product context.Products
select new project.Models.ProductsList
{
ProductID = Product.Id,
Name = customer.Name,
ProductNumber = customer.ProductNumber,
}).ToList();
Gridjavascript的数据源格式
var products= [{ "ProductID": 1, "Name": "Car", "ProductNumber": "AR-5381"},];
看法
不确定这是否是你的要求,但我认为你正在寻找课程 比如:
var serializer = new JavaScriptSerializer();
var serializedResult = serializer.Serialize(Products);
有关更多详细信息,请参阅链接。是否可以包含myFunction的声明?字符串myJSON=Newtonsoft.Json.JsonConvert.SerializedObjectProducts将为您提供序列化为Json的对象。您可能需要获得NewtonSoft库,但相信我,这是值得的。您仍然需要添加var产品=。。。到客户端脚本,但这只是一个细节。如果你在Google上搜索JsonConvert.SerializeObject,你会看到大量的引用,尽管我检查的前几个引用可读性不太好。你的问题很常见,如何将LINQ enumerable发送到浏览器?发布的答案是,您必须使用JSON。我知道你在使用Jquery Igrid,我没有这方面的经验;打电话的时候。
var products = [];
$(myFunction() {
$("#grid").igGrid({
autoGenerateColumns: true,
width: "80%",
height: "600px",
showHeaders: true,
fixedHeaders: true,
defaultColumnWidth: "200px",
columns: [
{ headerText: "ProductID", key: "ProductID", dataType: "number" },
{ headerText: "Name", key: "Name", dataType: "string" },
{ headerText: "ProductNumber", key: "ProductNumber", dataType: "string" },
],
dataSource: products,
features: [
{
name: 'Paging',
type: "local",
pageSize: 25
}
]
});
}
var serializer = new JavaScriptSerializer();
var serializedResult = serializer.Serialize(Products);