【问题标题】:adding namespaces when using RazorEngine使用 RazorEngine 时添加命名空间
【发布时间】:2017-03-03 17:07:13
【问题描述】:

我目前正在使用 RazorEngine 库来创建 html 电子邮件模板。代码:

var result = Engine.Razor.RunCompile(File.ReadAllText(templateFilePath), key, typeof(T), data);

在模板本身中,我想访问 MVC 提供的一些辅助方法,即@Html.Format(string string);

但是,每当我在模板中添加上述代码行时:

编译模板时出错。 请尝试以下方法来解决问题: * 如果问题是 关于丢失/无效的引用或多个定义要么尝试 加载 手动丢失的引用(在编译的应用程序域中!)或 通过提供您自己的 IReferenceResolver 实现来手动指定您的引用。 有关详细信息,请参阅https://antaris.github.io/RazorEngine/ReferenceResolver.html。 目前,所有参考资料都必须以文件形式提供! * 如果你得到'class'不包含'member'的定义: 尝试另一个模型类型(例如'null'使模型动态)。 注意:您不能使用 typeof(dynamic) 使模型动态化! 或者尝试使用静态而不是匿名/动态类型。有关错误的更多详细信息: - 错误:(180, 97) 当前上下文中不存在名称“Html”

这确实说明我需要引用正确的命名空间。问题是,我应该参考什么以及在哪里?

【问题讨论】:

标签: c# asp.net-mvc razorengine


【解决方案1】:

您在System.Web.Mvc 中寻找 HtmlHelper 吗?

参考:https://msdn.microsoft.com/en-us/library/system.web.mvc.htmlhelper_methods(v=vs.118).aspx

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-10-19
    • 1970-01-01
    • 2010-12-10
    • 2012-10-22
    • 2017-07-04
    • 1970-01-01
    • 2011-08-26
    • 1970-01-01
    相关资源
    最近更新 更多