我正在尝试将webform usercontrol转换为基于MVC的usercontrol。
MessageControl.ascx
public abstract class Feedback : System.Web.UI.UserControl
{
public string Message {get;set;}
}
public void ShowError()
{
lblMessage.InnerHtml = Message;
}
因此在aspx页面中,我可以调用公共方法ShowError并传递将在usercontrol ascx文件中显示的错误。
Aspx页面
protected void Page_Load(object sender, System.EventArgs e)
{
if(isError = true)
{
MessageControl1.Message = "Error Occured";
}
}
如何在MVC 4.0中实现相同的目标?
任何帮助都将不胜感激。
答案 0 :(得分:0)
正确的方法是对强类型模型使用模型状态。我经常使用的另一种手动方式是将错误消息放入Viewbag,然后在视图上检查Viewbag中的条目是否存在以及是否显示错误。例如(在asp.net mvc中):
<div id="notification_error" class="invalid" <%if (String.IsNullOrEmpty(""+TempData[ "ErrorMsg" ])){ %>style="display: none;"
<%} %>>
<%= TempData["ErrorMsg"] %>
</div>