0

コントローラーからjsonデータを解析した後、viwにデータを表示し、linqクエリを介してデータベースに保存したいのですが、モデル、ビュー、およびコントローラーを作成しましたが、ビューでデータを取得できず、データベースに保存されていません、タイプ EmployeeModel のリストを取得し、id がそのリストに追加されたレコードと一致する場合、そのレコードをデータベースに保存してビューに送信します。foreach がienumeratorを実装していないという観点から、エラーが発生しています。この問題を解決するのを手伝ってくださいありがとう......

namespace jsonMvcApplication.Models
{
public class jsonData
{
    public List<rootelem> data { get; set; }
}

public class rootelem
{
    public List<employeeObj> employee { get; set; }
}

public class employeeObj
{
    public List<DataElement> empdetails { get; set; }
}

public class DataElement
{
    public ulong empid { get; set; }
    public string empname { get; set; }
    public string empdept { get; set; }
    public List<empphone> empphone { get; set; }
}

public class empphone
{
    public string home { get; set; }
    public string mobile { get; set; }
}
}

-コントローラ

public ActionResult Index()
{
    var empid=111;
    WebClient c = new WebClient();
    EmployeeModel empClass;
    var Emplist=new List<EmployeeModel>();

    var jsonstring = @"{""data"":[{""employee"":[{""empdetails"":[{""empid"":""98977"",""empname"":""John"",""empdept"":""HR"",""empphone"":[{""home"":""868685768"",""mobile"":""89886654""}] }] }] }] }";

    empClass = JsonConvert.DeserializeObject<jsonData>(jsonstring);

    foreach (var items in empClass.data[0].employee[0].empdetails)
    {
    if (empid==111) 
       {
        Emplist.Add(empClass);
       }
    }
          return view(Emplist);
}

- 意見

@model jsonMvcApplication.Models.DataElement

<table>
@foreach(var empdetails in Model)
{
<tr> <td> @empdetails.empid </td> </tr>
<tr> <td> @empdetails.empname </td> </tr>
}
</table> 
4

2 に答える 2

0

あなたの見解で以下を試してください

<script>
var values = @Html.Raw(Json.Encode(Model.Values));
</script>
于 2013-09-25T17:31:19.503 に答える
0

モデル定義

@model jsonMvcApplication.Models.DataElement

コントローラーで返すものと一致しないようですよね?Emplist <> DataElement

于 2013-09-25T16:41:56.510 に答える