- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我目前正尝试在 C# 中使用 DotLiquid,我观察到一种我不太理解的行为。由于我对 C# 不是很熟悉,所以我不能确定我的问题是 C# 本身还是 DotLiquid,所以请耐心等待。 =)
我有一个非常基本的 index.liquid
,我正试图将一个 Table
对象传递给它。为了开始,我重写了 toString()
以简单地创建一个表示,现在,我稍后会想要使用实际的对象。尝试使用模板时,这就是我所做的:
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());
}
}
现在,当我打开这个新创建的 test.html
时,它只包含 C:\Path\To\index.liquid
,这意味着我无法加载我的模板正确。看着Try to use DotLiquid with c#我本以为我正在正确加载模板并使用 File.ReadAllText(templatePath));
向我展示了 templatePath
指向正确的文件。
这表明我不了解有关 Template.Parse()
或 Template.Render()
的一些非常基本的东西,其中源代码没有提供给我凭借我所缺少的洞察力,希望您能帮助我。
最佳答案
希望避免其他人被绊倒。输出是文件路径的真正原因是因为 Template.Parse(string source) 需要实际模板内容,而不是文件路径。
为了完成您的尝试,您需要以这种方式使用它:
Template template = Template.Parse(File.ReadAllText(templatePath));
关于c# - Dotliquid 模板渲染输出文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44758773/
我一直想使用出色的 DotLiquid 并尝试遵循示例(由我自己编写)但没有取得任何重大成功。 internal class AuthorDrop : Drop { private Strin
我目前正尝试在 C# 中使用 DotLiquid,我观察到一种我不太理解的行为。由于我对 C# 不是很熟悉,所以我不能确定我的问题是 C# 本身还是 DotLiquid,所以请耐心等待。 =) 我有一
我创建了一个 dotLiquid带有两个嵌套 for 循环的模板 {% for item in page.Fields %} {{ item.Name }}:
当我在 DotLiquid 模板中循环遍历 IEnumerable 时 {% for block in Blocks -%} // this works {{ block.Struct
我在 DotLiquid 中有这个循环: {% for page in Page -%} {{ page.Title }} {% for subpage in page
我正在调查使用 dotliquid替换一段自制的模板代码,我想知道实现我的目标的最佳方法。 旧代码用于在模板中使用印记,并与字典一起使用正则表达式进行搜索和替换。所以你在模板文件中做了这样的事情: S
我正在研究 REST 模拟服务。我使用 DotLiquid。我想将 POST 正文解析为来自 XML 和 JSON 的对象。 DotLiquid 适用于匿名类型,例如 var input = new
我正在使用 DotLiquid模板引擎并尝试访问模板中的字典值。我已经将这个 drop 传递给模板: public class SomeDrop : Drop { public Dictiona
我正在使用 DotLiquid对于我的 ASP.NET 4.0 Webforms 应用程序中的一些电子邮件模板,如果我绑定(bind)到模板的数据对象中的给定字符串为 null 或空,我试图排除我的一
我无法执行示例:http://dotliquidmarkup.org/try-online用C#。我有相同的示例并尝试使用以下代码执行它: var template = DotLiquid.Templ
假设我有以下模板: Hi {{ name }}! Welcome back to {{ blog }}. Last log-in date: {{ date }}. 允许用户输入模板和占位符/变量,所
我对执行 JSON 转换感兴趣并研究使用 dotliquid。 为了避免输入 JSON 的 POCO 只是为了能够将其作为变量发送,我想发送反序列化的 JSON。根据我的理解,我们无法向 render
在渲染液态模板时,我在特定情况下看到我的应用程序出现一些奇怪的不一致结果。作为记录,我使用的是 Ubuntu 12.10、Mono 3.2.3 和最新版本的 Dotliquid (1.7)。我对 Do
我有 ASP.NET Core 2.2 我正在尝试使用 nuget 安装 dotliquid Install-Package DotLiquid -Version 2.0.298 但得到错误 DotL
我尝试过构建 https://github.com/dotliquid/dotliquid using visual studio 2017RC but I get the following err
我是一名优秀的程序员,十分优秀!