2016-08-21 4 views
0

次のC#配列があり、JavaScriptに渡したいと思います。それを達成する最良の方法は何でしょうか?ありがとうございました?あなたはJSON文字列にあなたのオブジェクトを変換するためにJsonConvertを使用することができますので、彼らは簡単にあなたがする必要があるすべてはあなたのフロントエンドでの文字列を公開しているJavaScriptのC#カスタム配列をJavaScriptに渡す

// declare variable on your class 
public string strJson; 
... 
// assign value in relevant method 
strJson = Newtonsoft.Json.JsonConvert.SerializeObject(new myList); 

によって操作することができ

public static List<ListDetail> GetMyList() 
{ 
    List<ListDetail> myList = new List<ListDetail>(); 
    myList.Add(new ListDetail() { Id = 1, Name = "Party" }); 
    myList.Add(new ListDetail() { Id = 2, Name = "Course" }); 
    myList.Add(new ListDetail() { Id = 3, Name = "Home" }); 
    return myList.ToArray; 
} 
+0

?サーバー側のコードからWebページへ? – kemiller2002

+0

これを読む:http://stackoverflow.com/questions/11345382/convert-object-to-json-string-in-c-sharp –

答えて

2

ウェブサイト

ウェブフォームを使用している場合は、<script>タグ内に<%=strJson %>を使用できます。また、リテラルを使用することもできます。

例:

<script type="text/javascript"> 
    var xyz = <%=strJson%>; 
    console.log(xyz); 
</script> 

それとも、あなたがMVCを使用している場合、あなたはあなたのビューで<script>タグ内にあなたのコントローラでViewData["Json"] = strJson;を使用して、@Html.Raw(ViewData["Json"])ことができます。

例:どのようにして

<script type="text/javascript"> 
    var xyz = @Html.Raw(ViewData["Json"]); 
    console.log(xyz); 
</script> 
+0

返信いただきありがとうございます。そして、JavaScriptをJSONから配列に変換するにはどうしたらいいですか? – Ado

+0

配列の場合は 'Newtonsoft.Json.Linq.JArray.Parse(strJson)'を、オブジェクトの場合は 'Newtonsoft.Json.Linq.JObject.Parse(strJson)'を使用できます。あるいは、 'Newtonsoft.Json.JsonConvert.DeserializeObject()'を使って特定の.NETクラスに文字列を逆シリアル化することができます。 – Delosdos

関連する問題