gpt4 book ai didi

asp.net-mvc - 是否可以在 Html.DisplayFor 调用中放置条件语句?

转载 作者:行者123 更新时间:2023-12-04 18:15:04 25 4
gpt4 key购买 nike

基本上,我的 MVC 输出模型中有一个自定义构建的“日期”类“EndDate”。仅供引用:“日期”类构建了 DateTime,但隐藏了时间功能。我已经为这个 Date 类型创建了一个显示模板,它可以很好地格式化日期,但是如果对象为空(在本例中为 EndDate),在一次实例中(如下所示),我希望输出文本“未指定结束日期”。

<%:Html.DisplayFor(m => m.EndDate)%>

我不能像 Date 对象的所有实例一样更改显示模板,我也不想更改模型本身。基本上我想要类似的东西:
<%:Html.DisplayFor((m => (m.EndDate == null) ? "No End Date Specified" : m.EndDate)%>

以上是否可能以任何形式出现?如果不是,那么实现此功能的更好方法是什么。我想即使有办法做到这一点,如果这不是一个好主意,请告诉我为什么不这样做以及任何更好的方法

最佳答案

尝试使用 UIHint .

[UIHint("CustomDateNull")]
public CustomDate EndDate { get;set; }

然后创建一个 CustomDateNull.ascx显示模板。助手将在返回类型本身之前查找 UIHint。

如果您根本无法编辑模型,则必须求助于使用 RenderPartial 并将日期作为局部 View 的模型传递。

关于asp.net-mvc - 是否可以在 Html.DisplayFor 调用中放置条件语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4032973/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com