首页 > 解决方案 > 在 .net 核心上使用 scriban 向模板提供数据模型的问题

问题描述

我正在尝试从 scriban 模板生成文档,但输出中没有数据:

var template = Template.Parse("{{model.Data}}");
var renederdContent = template.Render(new {
        model = new {
            Data = "some string"
        }
    });

然而输出是空的。这曾经在 .net 框架上完美运行,而在 .net 核心上我遇到了问题。

标签: .net-corescriban

解决方案


似乎 Scriban 的行为在 .net 核心中有所不同。默认情况下,它会将名称更改为不同的大小写。例如,“Data”是对“data”的更改,而“PriceChanged”是对“price_changed”的更改。要保持名称不变,您需要像这样调用 Render 方法:

var renederedContent = template.Render(new {
    model = new {
        Data = "some string"
    },
    m => m.Name
});

推荐阅读