题
将在现有HTMLHelpers剃刀工作?如果是这样,那么关于任设计或使用剃刀改变什么HTMLHelpers?
THX
解决方案
是,现有的助手工作完全正常用剃刀。例如:
@Html.ActionLink("foo bar", "foo")
什么剃须刀变化是,现在你必须这样定义在线助理的可能性:
@helper FooBar(string foo)
{
<div>Hello @foo</div>
}
和使用这样的:
@FooBar("World")
至于经典的HTML辅助而言,剃须刀改变不了什么,它只是一个视图引擎,所以你继续写你的助手,你一直做的:
public static class HtmlExtensions
{
public static MvcHtmlString FooBar(this HtmlHelper htmlHelper, string value)
{
var builder = new TagBuilder("div");
div.SetInnerText(value);
return MvcHtmlString.Create(div.ToString());
}
}
和在剃刀使用:
@Html.FooBar("some value")
其他提示
剃刀进行HTML通过默认编码。
所以,如果你的任何MVC2 HtmlHelpers EMIT标记,它们可能无法正常工作,如果他们回国,而不是String
MvcHtmlString
。
不隶属于 StackOverflow