我正在尝试获取if语句来检查文件是否包含字母 “ M”,“ F”或“ U”
如果包含其他字母或不包含字母,则应返回false。
我遇到了错误:
“ CS1955 C#不可发音的成员“ SplitClass.Patient.Gender”不能像方法一样使用。”
如何解决此问题,以便可以在if语句中使用GenderOptions类?
public class Patient
{
public int NHSNumber { get; set; }
public DateTime DateOfBirth { get; set; }
public string Title { get; set; }
public string GivenName { get; set; }
public string Surname { get; set; }
public GenderOptions Gender { get; set; }
}
public enum GenderOptions
{
M,
F,
U
};
public enum TitleOptions
{
Mr,
Master,
Miss,
Mrs,
Ms,
Mx
};
public bool Validation(Patient patient)
{
if (patient.NHSNumber > 10) return false;
if (patient.NHSNumber < 10) return false;
if (patient.DateOfBirth.Year > DateTime.Today.Year) return false;
if (patient.DateOfBirth.Year < 1900) return false;
if (patient.Gender != ("M","F","U")) return false;
}
我也打算对TitleOptions做同样的事情,我只是困惑如何在if语句中正确使用Gender类。
//伪代码 如果(文件名)不包含“ M”,“ F”或“ U”
然后使用Console.WriteLine(“不包含有效的性别”);
答案 0 :(得分:2)
您可以使用Enum.IsDefined
if (!Enum.IsDefined(typeof(GenderOptions), patient.Gender)){
return false;
}
您还可以使用Enum.TryParse之类的东西