C# 为什么我在解决方案中的任何地方都看不到类型不匹配错误?
我的编辑器模板中出现以下错误,C# 为什么我在解决方案中的任何地方都看不到类型不匹配错误?,c#,.net,asp.net-mvc-4,C#,.net,Asp.net Mvc 4,我的编辑器模板中出现以下错误,applicationAddressMode: 错误CS0019:运算符“!=”无法应用于类型为的操作数 “Comair.RI.ViewModels.applicationAddressType”和 'Comair.RI.Models.applicationTypesOfAddress'} 找不到类型Comair.RI.ViewModels.applicationAddressType。仅对applicationAddressType的所有文件进行全局解决方案搜索不
applicationAddressMode
:
错误CS0019:运算符“!=”无法应用于类型为的操作数
“Comair.RI.ViewModels.applicationAddressType”和
'Comair.RI.Models.applicationTypesOfAddress'}
找不到类型Comair.RI.ViewModels.applicationAddressType
。仅对applicationAddressType
的所有文件进行全局解决方案搜索不会返回任何结果。我将Comair.RI.Models
中的枚举名称从applicationAddressType
更改为applicationTypesOfAddress
,以尝试避免意外匹配,并清除了32位和64位临时ASP Internet文件,但编辑器模板的这一行仍然存在错误:
@using Comair.RI.Models
@model Comair.RI.ViewModels.ApplicantAddressModel
@Html.ValidationSummary(true)
<fieldset>
<legend>@Model.AddressTypeDescription</legend>
<ul class="form-column">
@if (Model.AddressType != ApplicantTypesOfAddress.Residential)
{
我已经不知所措了,我要开始向四周投掷燃烧的尖旗,比如IsResidentialStreetNumber
和IsPostalSuburb
。我不认为救护车会在那之后很长时间到达,把我带到和平的地方
枚举声明如下所示:
namespace Comair.RI.Models
{
public enum ApplicantTypesOfAddress
{
Residential,
Postal
}
}
怀疑丢失的tpe已在项目中未包含的文件中声明。当您在编译时告诉VS生成视图时(通常仅在呈现它们之前),而不是在它生成应用程序集时,它将生成所有视图,并使用它们引用的任何文件,无论它们是否包含在项目中 有一个关于如何做到这一点的好帖子叫 但是我不知道TFS构建部分。我不使用它,在我的例子中,只需将以下元素添加到我的
.csproj
文件就可以了。注意,如果MvcBuildViews
元素已经存在,它的文本值必须为true
真的
买主注意。你能告诉我们你是如何定义地址的应用程序类型的吗?这只是一个普通的枚举吗?你的类型看起来像是跨程序集的。模型的程序集是否有可能过时?你提到你已经清理过了,但这是我能想到的唯一逻辑解释。
!Model.AddressType.Equals(申请人类型地址。住宅)
work?是的@Jon,这就是我能想到的。这是一个相对较小的解决方案,很难找不到错误的声明。@IronMan84错误只是变成error CS0019:运算符“==”不能应用于“Comair.RI.ViewModels.applicationAddressType”和“Comair.RI.Models.applicationTypesofAddress”类型的操作数}
namespace Comair.RI.Models
{
public enum ApplicantTypesOfAddress
{
Residential,
Postal
}
}
<PropertyGroup>
<MvcBuildViews>true</MvcBuildViews>
</PropertyGroup>