using RazorEngine outside asp.net I'm experiencing this error when I try to write raw html by using @Html.Raw("html string here")
:
Unable to compile template. The name 'Html' does not exist in the current context
Can you help me?
Thanks!
using RazorEngine outside asp.net I'm experiencing this error when I try to write raw html by using @Html.Raw("html string here")
:
Unable to compile template. The name 'Html' does not exist in the current context
Can you help me?
Thanks!
The solution has been found here: https://github.com/Antaris/RazorEngine/issues/34
It's enough to use @(new RawString("html string here"))
or @Raw("html string here")
instead of @Html.Raw("html string here")
.
I hope this helps! Bye
I implemented my own Raw whose result implements both IHtmlString and IEncodedString... and it worked! :)
In my csthml:
@MyRazorParser.Raw("<b>Testing</b>")
This works both when MVC uses it and when the RazorEngine parser uses it.
public class MyRawResult : RazorEngine.Text.IEncodedString, System.Web.IHtmlString
{
public string Value;
public MyRawResult(string value) { Value = value; }
public string ToEncodedString()
{
return Value;
}
public string ToHtmlString()
{
return Value;
}
public override string ToString()
{
return Value;
}
}
public static class MyRazorParser
{
public static object Raw(string str)
{
return new MyRawResult(str);
}
}