TopPanel이라는 PartialView가 있습니다. 이 Panel은 응용 프로그램의 모든 페이지에서 생성 된 오류 메시지를 표시합니다. 이를 처리하기 위해 페이지에서 예외가 발생하면 TopPanel 컨트롤러에서 "ErrorHandler"액션을 호출합니다. ErrorHandler는 오류 메시지로 ViewBag를 업데이트하고 부분 뷰를 반환하는 Index 액션을 호출합니다 (현재는 테스트 중이므로 나중에 전체 페이지를 표시하기 위해 Main Controller Index Action을 호출하게됩니다). 나의 이해는 Index 액션을 호출하면 뷰가 다시로드되고 TopPanels PartilaView에있는 ErrorDiv가 ViewBag에 새로운 오류 메시지를 표시 할 수 있다는 것입니다. 그러나 아무 것도 표시되지 않으며 이유가 확실하지 않습니다. ViewBag 부분 뷰에는 내용을 사용할 수 없습니까?
는 Heres는 몇 가지 코드 -ErrorHandler로 작업 - 내가 디버거에서 확인했습니다
public ActionResult ErrorHandler(string message)
{
ViewBag.ErrorMsg = message;
return RedirectToAction("Index");
}
, "메시지"유효한 값을 가지고있다. ViewBag.ErrorMsg도 채워집니다. TopPanel의
색인 작업 -
가<div id="errorMsgBox">@ViewBag.ErrorMsg</div>
사람이 문제가 무엇인지 지적 할 수 -
public ActionResult Index()
{
return PartialView();
}
TopPanels PartialView 오류를 표시하는이 고독한 포함?
+1 나를 대체 솔루션으로 제공합니다. 그러나, 나는 의심이있다. TopPanel 만로드하려면 TopPanel의 PartialView를 반환하면 그만큼 표시됩니다. 이것을 달성 할 수있는 방법이 있습니까? 또는 전체 페이지 (모든 부분보기가있는 상위 컨트롤러)를 다시로드해야합니까? – neuDev33
부분, 작업 및 리디렉션에 대한 이해가 잘못되었습니다. 여기에 모든 것을 설명하는 것이 쉽지 않기 때문에 일종의 자습서를보아야합니다. 또한 이것은 MVC 애플 리케이션의 오류를 처리하는 방법이 아닙니다. – mare