2011-03-08 64 views
0

在控制器操作中,我从方法中获得了一些结果,此方法返回一个Tuple。 Tuple中的第一项是IList,第二项是IList。显示带警告信息的模型列表的最佳方式是什么?

我想返回一个视图中显示,结果,经典的方式: 返回查看(“MyView的”,TheModel“);

,但我想更新一个div也显示错误或警告信息

一个想法如何做到这一点?最好的方法是什么?

感谢,

回答

0

你可以使用 ViewData["Message"] = "Your message"; 然后在视图中,您y中把这个消息我们的DIV:

<div> 
<%: ViewData["Message"] %> 
</div> 

或者你可以做简单的视图模型具有牵引性能(这是比以前更好):

public class myViewModel{ 

public string Message {get;set;} 
public IList<YourModel> ModelList {get;set;} 

} 

动作将是这样的:

public ActionResult Index() 
{ 
    var modelList = new List//make your logic to fill YourModel List 
    var viewModel = new myViewModel() 
         { 
          Message = "Your Message", 
          ModelList = modelList 
         }; 
    return View(viewModel); 
} 

然后使强类型视图显示您的ViewModel

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewPage<myViewModel>"%> 

<div> 
<%: Model.Message %> 
</div> 
    <table> 
     <tr> 
      <th> 
       Model Values 
      </th> 
     </tr> 

    <% foreach (var item in Model.ModelList) { %> 

     <tr> 
      <td> 
       <%: item %> 
      </td> 
     </tr> 

    <% } %> 

    </table> 

希望这有助于;)

0

在你的控制器动作:

ModelState.AddModelError("somekey", "some error message"); 

,并在您的视图:

<div> 
    <%: Html.ValidationMessage("somekey") %> 
</div> 

或包含错误信息为您的视图模型的一部分并在你看来:

<div> 
    <%: Model.ErrorMessage %> 
</div> 
相关问题