根据字段

时间:2017-10-04 13:19:48

标签: javascript c# html json asp.net-web-api

我需要使用从Web API调用返回的JSON数据填充HTML。 HTML也是一个模板文件,将向客户公开。 其中客户可以编辑HTML中的一些字段。

例如,删除一些标题和列等。假设HTML具有表格数据格式。 只要用户单击客户端上的按钮,就会执行Web API调用,就会获得JSON数据。 现在,必须根据它的标记将这个JSON数据加载到HTML模板上。

我们必须使用c#来填充HTML。 所有渲染(HTML的填充)必须在服务器端进行。 我们也可以使用javascript,但现在服务器解决方案是在asp.net web-API中。主要要求是渲染必须使用任何语言在服务器端进行。 如何在C#中实现?

HTML

<h3>Table Name</h3>
<table style="width:100%">
  <tr>
    <th>Row Names</th>
    <th>NewItems</th>
    <th>ChangedItems</th> 
    <th>Errors</th>
    <th>total</th>
  </tr>

  <tr>
    <td>Types</td>
    <td></td>
    <td></td>
    <td></td>
    <td></td>
  </tr>

  <tr>
    <td>Properties</td>
    <td></td>
    <td></td>
    <td></td>
    <td></td>
  </tr>

  <tr>
    <td>Lists</td>
    <td></td>
    <td></td>
    <td></td>
    <td></td>
  </tr>

  <tr>
    <td>Entries</td>
    <td></td>
    <td></td>
    <td></td>
    <td></td>
  </tr>
</table>

JSON

{
    "Compare Report": {
        "Types": {
            "NewItems": 0,
            "ChangedItems": 0,
            "Errors": 0,
            "Total": 0
        },
        "Properties": {
            "NewItems": 0,
            "ChangedItems": 0,
            "Errors": 0,
            "Total": 0
        },
        "Lists": {
            "NewItems": 0,
            "ChangedItems": 0,
            "Errors": 0,
            "Total": 0
        },
        "Entries": {
            "NewItems": 0,
            "ChangedItems": 0,
            "Errors": 0,
            "Total": 0
        }
    }
}

样本表

enter image description here

1 个答案:

答案 0 :(得分:0)

您将需要一个Model(作为ASP MVC的一部分)和一个JSON Serializer / Deserialize将JSON转换为一个对象(因为您没有使用AJAX / jQuery)。 JSON反序列化器可作为以下部分的一部分提供:

您可以使用JSON反序列化器将JSON映射到ASP MVC模型,然后在视图中呈现它。

如果您检查this .Net Fiddle,您将看到与Newtonsoft.JSON和ASP MVC 4.5一起检查。 (JavaScriptSerializer类没有内置支持。)