JavaScript数组数据从SQL服务器在c#

JavaScript Array Data from SQL server in C#

本文关键字:服务器 SQL 数组 数据 JavaScript      更新时间:2023-09-26

我试图将数据存储在数组中,我从SQL服务器检索,是他们的任何方式来完成它吗?

下面是我想动态生成的示例数组:
var movies = [
                    { "rank": 1,  "rating": 9.2, "year": 1994, "title": "The Shawshank Redemption" },
                    { "rank": 2,  "rating": 9.2, "year": 1972, "title": "The Godfather" },
                    { "rank": 3,  "rating": 9,   "year": 1974, "title": "The Godfather: Part II" },
                    { "rank": 4,  "rating": 8.9, "year": 1966, "title": "Il buono, il brutto, il cattivo." },
                    { "rank": 5,  "rating": 8.9, "year": 1994, "title": "Pulp Fiction" },
                    { "rank": 6,  "rating": 8.9, "year": 1957, "title": "12 Angry Men" },
                    { "rank": 7,  "rating": 8.9, "year": 1993, "title": "Schindler's List" },
                    { "rank": 8,  "rating": 8.8, "year": 1975, "title": "One Flew Over the Cuckoo's Nest" },
                    { "rank": 9,  "rating": 8.8, "year": 2010, "title": "Inception" },
                    { "rank": 10, "rating": 8.8, "year": 2008, "title": "The Dark Knight" }
                ]

从SQL Server获取IEnumerable模型,并使用标准的system . web . script . serialize . javascriptserializer:

控制器:

using System;
using System.Linq;
using System.Collections;
using System.Collections.Generic;
using System.Web.Mvc;
using System.Web.Script.Serialization;
namespace WebApplication1.Controllers {
    public class HomeController : Controller {
        public ActionResult Index() {
            object model = CreateScriptObjectFromDataObject(GetModel());
            return View(model);
        }
        private string CreateScriptObjectFromDataObject(IEnumerable dataObject) {
            JavaScriptSerializer serializer = new JavaScriptSerializer();
            return serializer.Serialize(dataObject);
        }
        private IEnumerable GetModel() {
            List<DataItem> items = new List<DataItem>();
            //LOAD ITEMS FROM DB INSTEAD
            items.Add(new DataItem() { rank = 1, rating = 9.2, year = 1994, title = "The Shawshank Redemption" });
            items.Add(new DataItem() { rank = 2, rating = 9.0, year = 1974, title = "The Godfather" });
            items.Add(new DataItem() { rank = 3, rating = 9.2, year = 1994, title = "The Godfather: Part II" });
            items.Add(new DataItem() { rank = 4, rating = 8.9, year = 1966, title = "Il buono, il brutto, il cattivo." });
            items.Add(new DataItem() { rank = 5, rating = 8.9, year = 1994, title = "Pulp Fiction" });
            items.Add(new DataItem() { rank = 6, rating = 8.9, year = 1957, title = "The Shawshank Redemption" });
            items.Add(new DataItem() { rank = 7, rating = 8.9, year = 1993, title = "12 Angry Men" });
            items.Add(new DataItem() { rank = 8, rating = 8.8, year = 1975, title = "One Flew Over the Cuckoo's Nes" });
            items.Add(new DataItem() { rank = 9, rating = 8.8, year = 2010, title = "Inception" });
            items.Add(new DataItem() { rank = 10, rating = 8.8, year = 2008, title = "The Dark Knight" });
            return items;
        }
    }
    public class DataItem {
        public int rank { get; set; }
        public double rating { get; set; }
        public int year { get; set; }
        public string title { get; set; }
    }
}

视图:

<script type="text/javascript">
    var movies = @Html.Raw(Model);
</script>