如何在 cshtml 中检查空/空值

本文关键字:空值 检查 cshtml | 更新日期: 2023-09-27 18:19:40

<b>Start Date: </b>@employee["StartDate"].<br />

使用 MVC Razor 3/C#,如何检查 cshtml 中的值是否employee["StartDate"]空/空?因此,如果是,我改为显示:

<b>Start Date: </b>Unknown.<br />

我试过了:

@if(employee["StartDate"] == null){<b>Start Date: </b>Unknown.<br />} 

但这行不通。

如何在 cshtml 中检查空/空值

试试

<b>Start Date: </b>@(employee["StartDate"] ?? "Unknown").<br />

??返回左侧值,如果左侧值null,则返回右侧值。

如果您只担心 null 或 null

@(String.IsNullOrEmpty(employee["StartDate"])?"Unknow":employee["StartDate"])

我最终使用了这个:

@if(employee["StartDate"].ToString() == ""){<b>Start Date: </b>Unknown.<br />}
else{<Start Date: </b>@employee["StartDate"].<br />}

但是有没有一种"更干净"的方式来写这个呢?

如果 startDate 是一个DateTime请尝试将其与 DateTime.MinValue 进行比较。

如果你有更多的问题,你可以在 razor 代码中放置断点,看看那个字段到底是什么

像下面这样尝试过,我已经厌倦了类似的空检查,它应该可以工作

@if(employee["StartDate"] != DateTime.MinValue){
  <Start Date: </b>@employee["StartDate"].<br />
}
else{
  <b>Start Date: </b>Unknown.<br />
}