0
から値を比較する必要がは、私は私のモデルで3つのクラスを持っている他のテーブル
モデル対象テーブルで
public class Student
{
public int id { get; set; }
[Required]
[DisplayName("Student Name")]
public string Name { get; set; }
[Required]
public int RollNO { get; set; }
public DateTime EnrollmentDate { get; set; }
public ICollection<Record> Records { get; set; }
}
public class Record
{
public int Id { get; set; }
public int StudentId { get; set; }
public int SubjectId { get; set; }
[Required]
public int Marks { get; set; }
public string Result { get; set; }
public virtual Student Students { get; set; }
public virtual Subject Subjects { get; set; }
}
public class Subject
{
public int id { get; set; }
[Required]
public string Title { get; set; }
[Required]
[DisplayName("Minimum Marks")]
public int MinMarks { get; set; }
[Required]
[DisplayName("Max Marks")]
public int MaxMarks { get; set; }
public ICollection<Record> Records { get; set; }
}
私は各被験者を作成し、その最小値を設定し、最大のマークが合格する必要があります...レコードテーブル(Create Page)で今選択した主題最小マークをRecord.Marksと比較し、最低マークがRecord.Resultで失敗し、その最大マークがPassでRecord.Resultになった場合...また、Result.MarksプロパティをSubject.MaxMarksと比較したい場合は、Subje ct.MaxMarksユーザーは...可能任意の形式で
をエラーを取得する必要があります。この私のコントローラである
コントローラ
public ActionResult Create([Bind(Include = "Id,StudentId,SubjectId,Marks,Result")] Record record,Subject subject)
{
var selectedSubject = db.Subjects.Where(sub => subject.id == record.SubjectId).FirstOrDefault();
if (record.Marks < selectedSubject.MinMarks)
{
record.Result = "Fail";
}
else
record.Result = "Pass";
if (ModelState.IsValid)
{
db.Records.Add(record);
db.SaveChanges();
return RedirectToAction("Index");
}
ViewBag.StudentId = new SelectList(db.Students, "id", "Name", record.StudentId);
ViewBag.SubjectId = new SelectList(db.Subjects, "id", "Title", record.SubjectId);
return View(record);
}
そのはそのように動作していない...イムselectedsubject.minmarks –
でヌル取得あなたがrecord.SubjectId' 'で正しいsubjectId値を持っていますか? – Shyju
w8申し訳ありません...私はちょうど選択したサブジェクトでnullを取得しているアプリを実行してみてください... –