【发布时间】:2015-01-12 05:01:21
【问题描述】:
使用 MVC 6.0 beta1 时,我可以在 MVC 源代码中看到 GetHtmlHelper 有一个实用程序 DefaultTemplatesUtilities.cs。但是这个 HtmlHelper 只返回在 CreateViewEngine() 方法中设置的格式化输出。
如何创建viewEngine 以便呈现正常的html。
我需要通过代码获取HtmlHelper,并用它来生成一些html。即htmlHelper.EditorFor(model=>model.Property)
【问题讨论】:
-
你到底想做什么? MVC 6 应用程序中的每个视图页面 (CSHTML) 文件都可以通过键入
@Html.TextBox(...)等来访问 HTML 帮助程序。 -
我需要通过代码为对象的属性生成Editors。我可以简单地在视图中使用 Html.EditorFor,但需要在控制器中进行。我的目标是有一些东西可以自动生成基于复杂模型的编辑器,即具有自定义对象列表作为属性的类。在 mvc 源代码中使用 DefaultTemplatesUtilities.cs,我可以根据提供的模型获取 HtmlHelper。但我无法获得编辑。
-
我要关闭这个并用更好的措辞提出一个新问题
-
如果这是您自己的问题,我认为您可以在问题下方(标签附近)看到一个
delete按钮,只需将其删除而不是尝试关闭它。 -
我认为他想要的是创建一个 ViewModel,其中包含在控制器的 index 方法中创建的
IHtmlString属性。我认为您不能从控制器内部创建 HTML 标记,因为这是预览引擎渲染阶段 - HtmlHelpers 供视图使用
标签: asp.net-core asp.net-core-mvc