我想创建一个帮助器,我可以像Helper.BeginForm()那样在括号之间添加内容.我不介意为我的助手创建一个Begin,End,但这样做非常简单易行.
基本上我想要做的是在这些标签之间包装内容,以便它们呈现已经格式化
就像是
@using Html.Section("full", "The Title")
{
This is the content for this section
<p>More content</p>
@Html.TextFor("text","label")
etc etc etc
}
Run Code Online (Sandbox Code Playgroud)
参数"full"是该div的css id,"title"是该部分的标题.
除了做我想做的事情之外,还有更好的方法来实现这个目标吗?
提前感谢您的帮助.
我正在使用Razor Engine从数据库动态编译我的剃刀视图.现在我使用Razor Engine 3.7.3.我看到很少有关于如何阅读html帮助并编译它的帖子,但它是旧版本的razor引擎.
我已经读过了ITemplateServiceConfiguration,但我真的不明白它是如何工作的.
我的问题是,如何在html内容中使用@Html(Html帮助程序),@ Url(Url Helper)和@section(如@Section脚本,@Section精选)成功运行compile()razorengine(v3.7.3)我的数据库?
我到目前为止所做的事情.我试图实现我从另一篇文章中获得的代码.该代码适用于较旧版本的剃刀引擎.他建议我们创建自己的帮助类:
public class RazorHtmlHelper
{
public IEncodedString Partial(string viewName)
{
ITemplate template = RazorEngine.Razor.Resolve(viewName);
ExecuteContext ec = new ExecuteContext();
RawString result = new RawString(template.Run(ec));
return result;
}
}
public class RazorUrlHelper
{
public string Encode(string url)
{
return System.Uri.EscapeUriString(url);
}
}
Run Code Online (Sandbox Code Playgroud)
然后他建议创建我们自己的模板:
public class RazorTemplateBase<T> : TemplateBase<T>
{
private RazorUrlHelper _urlHelper = new RazorUrlHelper();
private RazorHtmlHelper _htmlHelper = new RazorHtmlHelper();
public RazorUrlHelper Url
{
get
{ …Run Code Online (Sandbox Code Playgroud)