簡體   English   中英

什么是將數組從C#返回到javascript的最佳(簡便明了)方法

[英]What is the best(easy and clear) way to return arrays from C# to javascript

我知道這里有很多類似的問題,但是我沒有發現有人問完全相同的問題。

我正在使用ASP.NET和MVC4開發項目。 我正在使用aspx作為視圖引擎。 我在視圖處有一個javascript代碼,該代碼獲取輸入值表,並根據它們創建圖。

我使用下面的查詢從數據庫中獲取這些值

        var query = from b in db.SchoolTestsPerModulePerStudent
                    where b.StudentID.Equals(2)
                    select b;

現在,我的問題是我是否將這些結果放在數組中(我還沒有弄清楚,如何給定b,將其結果分成兩個數組,一個包含測試ID,另一個包含學生的成績,但是我希望我會很快),將這些數組從C#返回到javascript的最佳(簡便)方法是什么?

將對象序列化為JSON 例如,如果您的模型是IEnumerable<string>

調節器

public ActionResult Index()
{
    IList<string> strings = new List<string>();
    strings.Add("Python");
    strings.Add("C#");
    strings.Add("Javascript");
    strings.Add("Ruby");
    return View(strings);
}

視圖

@Json.Encode(Model)

結果:

["Python","C#","Javascript","Ruby"]

提取數組

如何給定b,將其結果分成兩個數組

使用Linq。

var student = db.SchoolTestsPerModulePerStudent.Where(x => x.StudentId == 2);
var dates = student.Select(x => x.TestDate);
var grades = student.Select(x => x.TestGrade);

饋送到您的視圖的模型(viewmodel)應該包含一個包含ID和等級的強類型列表。 在您的視圖中(至少使用剃須刀),例如,當您將Model.MyList傳遞給它時,會有HTML幫助程序為您構建下拉列表。

抱歉,我不能給你一個例子,我不在工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM