无法将类型“RazorEngine.Text.RawString”隐式转换为“字符串”

本文关键字:字符串 转换 Text 类型 RazorEngine RawString | 更新日期: 2023-09-27 18:35:43

我不必每次都定义它,而是做了一个子模板来确定产品是否:有货、缺货、停产等。

所以在我的主模板中,我想根据返回值显示一些东西。

当我使用@Raw(Model.TemplateUtil.Subtemplate("SubAvailabilityCheck"))时,我得到了正确的值(即。有货或即将推出等)

但是当我添加以下内容来声明我的变量时:

string stockCheck = Raw(Model.TemplateUtil.Subtemplate("SubAvailabilityCheck"));

它给了我:错误:无法隐式地将类型"RazorEngine.Text.RawString"转换为"字符串"

当我转换为字符串时,它会输出整个 html 代码,其中包含标记模板开头和结尾等的默认 html 注释。其中 RAW 剥离了除内容之外的所有内容。

有什么方法可以解决这个问题吗?

无法将类型“RazorEngine.Text.RawString”隐式转换为“字符串”

Raw()函数只是将你传递给它的字符串包装在一个RawString中,它告诉RazorEngine不要对它进行HTML转义。

正如错误试图告诉您的那样,RawString不是字符串,不能存储在string变量中。

将变量更改为 RawString 类型。