public override bool Equals(object obj) { if (!(obj is PersonNoPHcomment)) { return(false); } PersonNoPHcomment person = (PersonNoPHcomment)obj; //HasValue=FalseなNull許容型同士を比較するとnullになるので、Trueになるように一致条件を工夫した if ((this.Id == person.Id || (!this.IsDaimyou.HasValue && !person.IsDaimyou.HasValue)) && this.Name == person.Name && this.BirthDay == person.BirthDay && this.Height == person.Height && (this.Weight == person.Weight || (!this.Weight.HasValue && !person.Weight.HasValue)) && (this.IsDaimyou == person.IsDaimyou || (!this.IsDaimyou.HasValue && !person.IsDaimyou.HasValue)) && this.Remarks == person.Remarks) { return(true); } else { return(false); } }
public void NoDefaultPlaceHolders() { using (var tran = _db.CreateTran()) { /* SqlPodでは@Daimyouプレースホルダの初期値は設定していない * 初期化SELECT文の発行時に仮値"0=1"を適用することでViewInfoの * 初期化が完了できることを確認する */ var record = new PersonNoPHcomment(15, "足利義昭", new DateTime(1537, 12, 5), 168, 68, false, "逃亡生活"); Assert.That(tran.Save(record), Is.EqualTo(1)); Assert.That(tran.LastExecutedSql, Is.EqualTo("INSERT INTO Persons(id,name,birthDay,height,weight,isDaimyou,remarks) " + "VALUES(15," + N + "'足利義昭','1537-12-05',168,68,0," + N + "'逃亡生活')")); } }