问题标签 [display-templates]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1188 浏览

c# - ASP.NET MVC 3:具体实现的输出特定视图

我有一个基本类型的 IEnumerable 作为我的模型。

我需要根据具体类型在列表中显示不同的 HTML。

因此,结果列表在 HTML 中可能与此类似:

稍后我可能会为此添加另一种类型,因此以下解决方案并不是我真正想要的。

我已经查看了模型元数据模板提示,但这并没有真正帮助,因为我的模型是 IEnumerable..

我正在考虑一个自定义 Html Helper 查看具体类型的属性,但认为可能有一种内置的方式来执行此操作?

0 投票
1 回答
4727 浏览

asp.net-mvc - 在一个编辑器模板中调用另一个具有相同模型的编辑器模板

我有一个编辑器模板,在该编辑器模板中我想调用另一个具有相同模型(即嵌套)的编辑器模板,但它似乎没有显示。
IE。\EditorTemplates\Template1.cshtml

和 \EditorTemplates\Template2.cshtml

我相信有人会问为什么?好吧,只有在满足条件时才会显示嵌套模板(即 @if (@Model.IsConditionMet) { .... } ),但为了简单起见,我将其从原型中删除。

0 投票
5 回答
15137 浏览

asp.net-mvc-3 - 如何覆盖 DisplayFor 布尔值?

如何创建显示模板,以便将布尔显示为是或否而不是复选框?使用 mvc3

0 投票
1 回答
483 浏览

asp.net-mvc-3 - MVC 3 Razor - 为特定属性名称创建 DisplayTemplate,例如 WebsiteUrl、IsActive

我的模型有非常严格的命名约定,我想知道我是否可以通过显示模板来利用它来处理常见字段,如 WebsiteUrl、IsActive、UpdateDate、InsertDate?

是否可以根据属性名称创建显示模板?

编辑:

我知道我可以使用这样的方法来实现这一点:

我只是想知道是否有更强类型的方式来做到这一点。

0 投票
1 回答
677 浏览

asp.net-mvc-3 - 创建 MVC 3 Razor - 用于在多个项目/解决方案之间共享的显示模板库

是否可以将显示模板放在单独的 VS 项目中,然后我的网站项目可以引用该项目。我喜欢使用显示模板,但我不喜欢通过复制和粘贴重复使用的想法,因为这很快就会让人头疼。

0 投票
1 回答
516 浏览

c# - 你能[过时] Razor 中的 DisplayTemplate 吗?

我在 Razor 中创建了一个显示模板,专门用于显示货币,现在我想在我的代码中删除它并替换为接受字符串格式(我可以设置为“C”)的标准文本显示模板。

但是发生了很多情况,因此我想使用带有警告消息的 [Obsolete] 属性之类的东西,以便在接下来的几周内完成此操作而不会破坏所有代码。

这是可能的还是有等效的方法?

干杯,

亚当。

0 投票
4 回答
24860 浏览

asp.net-mvc - ASP.net MVC - 集合的显示模板

我在 MVC 中有以下模型:

当我想显示父模型的所有子模型时,我可以这样做:

然后我可以创建一个 ChildModel.cshtml 显示模板,DisplayFor 将自动遍历列表。

如果我想为 IEnumerable 创建自定义模板怎么办?

如何创建具有模型类型的显示模板,IEnumerable<ChildModel>然后调用@Html.DisplayFor(m => m.Children)而不抱怨模型类型错误?

0 投票
2 回答
725 浏览

asp.net-mvc-3 - 为什么 ASP.NET MVC 3 不能为复杂类型解析我的 DisplayTemplate?

我一直在将 DisplayTemplates/EditorTemplates 用于相对简单的类型,例如 DateTime 和 DateTime? 等。现在我想用它来呈现一个更复杂的类型,它正在传递我的视图模型。复杂类型基本上是来自 EF 的实体。

视图模型如下所示:

我在 Shared/DisplayTemplates 中创建了一个名为“Inventory.cshtml”的模板。它看起来像这样(我已经删除了一点,但它本质上是一样的)

在视图内部,我有这个:

我期待它在这里解决我的 DisplayTemplate 并使用它。然而,事实并非如此。我在视图模型中添加了一个 UIHint 属性,以防万一:

这似乎没有什么不同。我显然在这里遗漏了一些东西,但我没有看到它。

在渲染时,我得到的只是 HTML 中的数字“1”——这是我正在渲染的实体的主键。

有任何想法吗?这种事情应该可以的,对吧?

编辑:只需从 @Html.DisplayForText(i => i.InventoryItem) 更改为 @Html.DisplayFor(i => i.InventoryItem) 即可解决问题。不需要 UIHint 属性。

0 投票
0 回答
232 浏览

c# - 你如何嵌入剃须刀 EditorFor View

我有一个可组合的 Web 应用程序,用户在其中输入一个项目编号,然后调用多个处理器中的一个来处理基于项目类型的操作。每个“处理器”都在一个单独的 .dll 中,可以放入应用程序并由 IOC 容器拾取以允许扩展站点。

处理器有时需要请求反馈,因此传递一个与 Html.EditorFor 一起使用的对象,以从用户那里收集额外的信息。

我的问题是是否有办法将 EditorFor 模板嵌入到单独的 .dll 中并让它在 Web 应用程序中获取?理想情况下,处理器将能够指定自己的 EditorFor 模板,这样他们就不会只使用基本的 EditorFor 模板,因为它相当缺乏。

0 投票
1 回答
2712 浏览

c# - ASP.net MVC - 指定显示模板的完整路径

是否可以指定显示或编辑器模板的完整路径?

例如,我有以下模型:

我有一个ParentController和一个ChildController,我想把子显示模板视图放在 Views/Child/DisplayTemplates/ChildModel.cshtml 和 Views/Parent/DisplayTemplates/ParentModel.cshtml 中的 ParentModel.cshtml 视图中。

现在它找不到子显示模板,因为它正在查看视图/共享和视图/父级。

是否可以指定显示模板的完整路径或编写可以指定要查看的文件夹的 HtmlHelper?