3

我需要编写一个需要注入构造函数参数的自定义基本模板。

对于 RazorEngine v2 ,这非常清楚地说明了必须如何完成。

在 v3 中应该如何完成自定义基本模板 DI?我的意思是还有办法通过 activator 来表达Func<>吗?

4

1 回答 1

3

这仍然很有可能,您配置模板服务的方法已经改变,因为我想将所有配置集中到一个界面中。以下网址(https://github.com/Antaris/RazorEngine/blob/release-3.0/src/Core/Tests/RazorEngine.Core.Tests/ActivatorTestFixture.cs)是我构建的单元测试示例演示了在 Unity 中使用 DI,这个特别是使用激活器。

ADelegateActivator确实存在于RazorEngine.Templating命名空间中,它可以让你实现你想要的。我正在寻找尝试简化这一点的方法。您还可以使用 Fluent 配置 API 对其进行配置:

var config = new FluentTemplateServiceConfiguration(c =>
    c.ActivateUsing(context => {your code here}));

var service = new TemplateService(config);
于 2012-01-19T11:57:23.113 回答