2016-08-30 11 views
3

誰かがJsonデータをHandleBarにバインドする方法を知っていますか?ここで JsonをHandlebar.Netにバインドする

はソースです:

string source = 
     @"<div class=""entry""> 
      <h1>{{title}}</h1> 
      <div class=""body""> 
      {{body}} 
      </div> 
     </div>"; 
     var template = Handlebars.Compile(source); 
     var data = new 
     { 
      title = "My new post", 
      body = "This is my first post!" 
     }; 

     var result = template(data); 

そして、それが正常に動作しますが、私はJSONにデータを持っているし、また、私は繰り返しを行う必要があります。私はこの例をチェックすることができ

https://github.com/rexm/Handlebars.Net html。

{"Threshold":12,"Server":[{"Name":"Machine1","CpuUsage":27,"RamUsage":62},{"Name":Machine2","CpuUsage":25,"RamUsage":57}]} 

おかげ

答えて

0

****ちょうどあなたが使用する必要はありません、明確にする編集09/01 **** JSON.Net、または任意: たとえば、これは、JSONかもしれません下のオブジェクトをJSONに変換するための他のユーティリティ。 Handlebars.Netはクラスプロパティに基づいてそれを行います。

****オリジナル****上記のコードを変更する

public class Server 
{ 
    public string Name {get;set;} 
    public int CpuUsage {get;set;} 
    public int RamUsage {get;set;} 
} 

public class HandlebarsJson 
{ 
    public int Threshold {get;set;} 
    public List<Server> ListOfServers {get;set;} 
} 

"<div class=""entry""> 
    <h1>{{Threshold}}</h1> 
    <div class=""body""> 
    {{#each ListOfServers}} 
     <p>{{Name}}</p> 
     <p>{{CpuUsage}}</p> 
     <p>{{RamUsage}}</p> 
    {{/each}} 
    </div> 
</div>" 

さらに詳しい情報:

var template = Handlebars.Compile(source); 
    var data = new HandlebarsJson(); 

    //Code to populate data goes here 

    var result = template(data); 

あなたのテンプレートのHTMLは次のようなものに見えるかもしれません「各」ヘルパーについては、こちらをご覧ください:Built-In Helpers

関連する問題