現在C#でDotLiquidを使用しようとしていますが、私はあまり理解していない動作を観察しました。私はC#に慣れていないので、私の問題がC#それともDotLiquidであるかどうかは確信できませんので、私にご負担ください。 =)Dotliquidテンプレートレンダリング出力ファイルパス
私は非常に基本的なindex.liquid
を持っていますが、これはTable
に目的を渡そうとしています。 はじめに、表現を作成するだけでtoString()
をオーバーライドしましたが、今度は実際のオブジェクトで作業したいと思っています。テンプレートで作業しようとすると、これは私が何をすべきかです:私はこの新しく作成されたtest.html
を開いたとき
public static void createHTML(DataTable table)
{
string templatePath = @"C:\Path\To\index.liquid";
var template = Template.Parse(templatePath);
template.Render(Hash.FromAnonymousObject(new
{
table = DataMapper.createTable(table).toString()
});
using (StreamWrite file = new StreamWriter(@"C:\Some\Path\test.html"))
{
file.write(template.Render());
}
}
今、それに含まれるすべては私が何とか正しく私のテンプレートをロードしていないです意味、C:\Path\To\index.liquid
です。 Try to use DotLiquid with c# 私はテンプレートを正しくロードしていると思いますが、File.ReadAllText(templatePath));
はtemplatePath
が正しいファイルを指していることを示しています。
これは私がTemplate.Parse()
またはTemplate.Render()
について非常に基本的なものを理解していないことを示しています。ソースコードでは私が見逃している洞察を私に提供しないので、うまくいけば、助けてくれます。