Asp.net mvc ';型号';与声明模型冲突

Asp.net mvc ';型号';与声明模型冲突,asp.net-mvc,asp.net-mvc-4,Asp.net Mvc,Asp.net Mvc 4,编辑: 传真号码: @DisplayFor(Model=>Model.FaxNumber) 联系人姓名: @Html.DisplayFor(Model=>Model.ContactFirstName) @DisplayFor(Model=>Model.ContactLastName) 联系审核日期: @if(item.AuditDate.HasValue!=null) { @DisplayFor(x=>x.AuditDate.Value.ToString(“d”)) } 我花了大量的

编辑:


传真号码:
@DisplayFor(Model=>Model.FaxNumber)

联系人姓名: @Html.DisplayFor(Model=>Model.ContactFirstName) @DisplayFor(Model=>Model.ContactLastName)

联系审核日期: @if(item.AuditDate.HasValue!=null) { @DisplayFor(x=>x.AuditDate.Value.ToString(“d”)) }
我花了大量的时间试图弄清楚为什么会出现这个错误,我已经扫描了网络,但没有得到任何解决方案,我试图检查该值是否为null,但我得到了以下错误:

我认为:

<p>
  <span class="strong">Fax Number:</span>&nbsp 
  @Html.DisplayFor(Model => Model.FaxNumber)
</p>
<p>
  <span class="strong">Contact Name:</span>&nbsp 
  @Html.DisplayFor(Model => Model.ContactFirstName) &nbsp
  @Html.DisplayFor(Model => Model.ContactLastName)
</p>
<p>
  <span class="strong">Contact Audit Date:</span>&nbsp
  @if (item.AuditDate.HasValue != null)
  {
    @Html.DisplayFor(x => x.AuditDate.Value.ToString("d"))
  }
@model myapp.Models.Employee

@如果(Model.AuditDate.HasValue!=null)您在下面的语句中使用的是
Model
keword

@model myapp.Models.Employee

@if(Model.AuditDate.HasValue !=null) <<<< getting error on Model here
{  
     @Html.DisplayFor(x => x.AuditDate.Value.ToString("d"))
};
您还在lambda表达式中为
@Html.DisplayFor()
帮助程序使用
Model
关键字,从而导致错误。注意:如果将
if
语句放在所有
DisplayFor
帮助程序之前,则会出现不同的错误

无法在此范围内声明名为“Model”的局部变量,因为它将赋予“Model”不同的含义

将代码更改为

@if (Model.AuditDate.HasValue != null)

只需使用
@Html.DisplayFor(m=>m.AuditDate)
。不需要
if
块。如果
AuditDate
有一个值,它将根据格式呈现,否则如果它的
null
,则不会呈现任何内容。

不相关,但它只是
@如果(Model.AuditDate.HasValue){
您确定视图中的其他地方没有类似于
@Html.DisplayFor(Model=>Model.SomeProperty)
的内容吗(大写M)?
Model
是视图中的保留关键字(不能在lambda表达式中使用),因此使用
@Html.DisplayFor(M=>M.FaxNumber)
等。我试图使用
m
model
或其他什么,但仍然收到此错误,因此如果我使用
m
则错误为:
名称“m”在当前上下文中不存在
错误仅发生在
@如果(m.AuditDate.HasValue
叹气!…我现在得到了它,所以我应该在整个视图中使用它,而不是使用
模型
使用
m或模型或其他什么
,并且在进行任何检查时直接使用
模型
,谢谢您的帮助-:)
<p>
  <span class="strong">Fax Number:</span>&nbsp 
  @Html.DisplayFor(m => m.FaxNumber)
</p>
<p>
<span class="strong">Contact Name:</span>&nbsp 
  @Html.DisplayFor(m => m.ContactFirstName)&nbsp
  @Html.DisplayFor(m => m.ContactLastName)
</p>
<p>
  <span class="strong">Contact Audit Date:</span>&nbsp
  @if (Model.AuditDate.HasValue)
  {
    @Html.DisplayFor(x => x.AuditDate.Value.ToString("d"))
  }
</p>
[DisplayFormat(DataFormatString = "{0:dd MMMM yyyy"})]
public DateTime? AuditDate { get; set; }