나는 ASP 사이트에서 여기의 asp.net MVC에 대한 자습서를 찾고 있어요는 :ASP.NET MVC 3 -이 부울 값이 컨트롤러에서 어떻게 작동합니까?
//
// GET: /Student/Delete/5
public ActionResult Delete(int id, bool? saveChangesError)
{
if (saveChangesError.GetValueOrDefault())
{
ViewBag.ErrorMessage = "Unable to save changes. Try again, and if the problem persists contact your system administrator.";
}
return View(db.Students.Find(id));
}
나를 혼란이 컨트롤러의 방법이있다 bool은 'saveChangesError'라는 이름으로 생성되지만 if 문에는 'GetValueOrDefault()'라는 부울에서 호출되는 메서드가 있습니다.
이 시나리오에서 정확히 무엇이 일어나고 있습니까? GetValueOrDefault()가 모든 부울 유형의 메소드 여야한다고 가정합니다. .NET 문서에서 이것을 살펴본 결과, 다음 정의가 발견되었습니다.
HasValue 속성이 true 인 경우 Value 속성의 값. 그렇지 않으면 현재 Nullable (Of T) 개체의 기본값입니다. 기본값의 형식은 현재 Nullable (Of T) 개체의 형식 인수이며 기본값은 이며 이진수는 0입니다.
이 정의를 .net mvc 앱에서 진행되는 것과 연결하는 데 문제가 있습니다.
감사합니다.
아니요, null 허용 bool의 경우에만 – dotjoe