Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# MVC模型,如何在不使用Required或Compare属性的情况下将错误消息放入模型中?_C#_.net_Asp.net Mvc_Asp.net Mvc 5 - Fatal编程技术网

C# MVC模型,如何在不使用Required或Compare属性的情况下将错误消息放入模型中?

C# MVC模型,如何在不使用Required或Compare属性的情况下将错误消息放入模型中?,c#,.net,asp.net-mvc,asp.net-mvc-5,C#,.net,Asp.net Mvc,Asp.net Mvc 5,我的问题可能看起来很奇怪,但我真的想问,如何设置一条错误消息,该消息将由一些自定义条件验证在操作中显示 我不能用[Required]或[Compare]装饰字段,因为我将在操作中执行一些条件验证,并将错误消息添加到ModelState 我尝试了以下代码,但在视图中显示了两条错误消息,一条是我在操作中添加的,另一条是默认情况下出现的,可能是我没有在任何地方声明的。请您指导我如何编辑此默认错误消息 if (String.IsNullOrEmpty(model.ApplicantDetails.Par

我的问题可能看起来很奇怪,但我真的想问,如何设置一条错误消息,该消息将由一些自定义条件验证在操作中显示

我不能用
[Required]或[Compare]
装饰字段,因为我将在操作中执行一些条件验证,并将错误消息添加到
ModelState

我尝试了以下代码,但在视图中显示了两条错误消息,一条是我在操作中添加的,另一条是默认情况下出现的,可能是我没有在任何地方声明的。请您指导我如何编辑此默认错误消息

if (String.IsNullOrEmpty(model.ApplicantDetails.PartnerDOB.ToString()))
{
  ModelState.AddModelError("ApplicantDetails.PartnerDOB", "Partner DOB is required");
}
鉴于此,我只有:

@Html.ValidationSummary();
不显示带有字段的错误消息

在视图中,它显示两条消息:

需要合作伙伴DOB

字段PartnerGender必须是最大长度为“1”的字符串或数组类型

编辑:

公共部分类应用程序第2步
{
public int LeadSequence{get;set;}
公共字符串标题{get;set;}
公共字符串GivenName{get;set;}
公共字符串姓氏{get;set;}
公共可空DOB{get;set;}
公共字符串{get;set;}
公共字符串地址1{get;set;}
公共字符串地址2{get;set;}
公共字符串{get;set;}
公共字符串状态{get;set;}
公共字符串邮政编码{get;set;}
公共可空IsPostal{get;set;}
公共字符串PostalAddress1{get;set;}
公共字符串PostalAddress2{get;set;}
公共字符串Postalsuburb{get;set;}
公共字符串PostalState{get;set;}
公共字符串PostalCode{get;set;}
公共字符串工作电话{get;set;}
公共字符串家庭电话{get;set;}
公共字符串Mobile{get;set;}
公共字符串电子邮件{get;set;}
公共可为空的ContinuousCover{get;set;}
公共字符串PartnerTitle{get;set;}
公共字符串PartnerName{get;set;}
公共字符串partnerName{get;set;}
公共可为空的PartnerDOB{get;set;}
公共字符串{get;set;}
公共可为空的PartnerContinuousCover{get;set;}
公共可空条件{get;set;}
公共字符串条件text{get;set;}
公共可为空的Insertedon{get;set;}
公共可空修饰符{get;set;}
}

我看不到您的“以下”代码。请添加视图和控制器代码。还有您尝试的代码。@SBirthare请查看我的编辑。Thanks@RahulSingh,请参阅我的编辑。谢谢您是否从applicationDetails.PartnerDOB属性中删除属性?看起来UI正在提取属性,然后是ModelError。
 public partial class App_Step2
{
    public int LeadSequence { get; set; }
    public string Title { get; set; }
    public string GivenName { get; set; }
    public string Surname { get; set; }
    public Nullable<System.DateTime> DOB { get; set; }
    public string Gender { get; set; }
    public string Address1 { get; set; }
    public string Address2 { get; set; }
    public string Suburb { get; set; }
    public string State { get; set; }
    public string Postcode { get; set; }
    public Nullable<bool> IsPostal { get; set; }
    public string PostalAddress1 { get; set; }
    public string PostalAddress2 { get; set; }
    public string Postalsuburb { get; set; }
    public string PostalState { get; set; }
    public string PostalCode { get; set; }
    public string WorkPhone { get; set; }
    public string HomePhone { get; set; }
    public string Mobile { get; set; }
    public string Email { get; set; }
    public Nullable<bool> ContinuousCover { get; set; }
    public string PartnerTitle { get; set; }
    public string PartnerName { get; set; }
    public string PartnerSurname { get; set; }
    public Nullable<System.DateTime> PartnerDOB { get; set; }
    public string PartnerGender { get; set; }
    public Nullable<bool> PartnerContinuousCover { get; set; }
    public Nullable<bool> Conditions { get; set; }
    public string ConditionsText { get; set; }
    public Nullable<System.DateTime> Insertedon { get; set; }
    public Nullable<System.DateTime> Modifiedon { get; set; }
}