2016-01-28 22 views
0

我是新来的MVC编程,我试图实现诊所系统的情况。情景是这样的,我有一个用户编码数据的日常记录。我能够使用脚手架索引,编辑,细节和删除视图在MVC中生成它。接下来我想实现的是将特定记录的历史记录显示在创建,编辑和详细视图中。历史记录应该与访问诊所的记录一致。MVC - 创建,编辑和详细查看与清单

我到目前为止搜索的是它应该在部分视图中,其中它应该放置在视图中,例如编辑视图。我的问题是我不知道如何实现这种情况。

任何人都可以帮忙吗?任何MVC框架的专家?

+0

创建'ChildActionOnly()'控制器产生的“历史”的局部视图方法(说'公共ActionResult的历史(INT ID)'),然后在视图中您可以使用'@Html.Action (“历史”,新{ID = Model.ID})'。而且我怀疑你并不是真的想要创建一个视图:) –

回答

0

是的,你是对的,局部视图是有用的在这些scenarious。

您可以使用Jquery Ajax调用或任何其他ajax加载partialview

然后使用ajax调用呈现的partialview加载“PlaceHolder”。

$("#viewPlaceHolder").html(<result view [html] of the ajax call>) ; 

link是有帮助的。

0

您可以开始为您的记录创建一个ViewModel,它将包含RecordHistoryItems的集合。然后,您可以通过脚手架或手动生成MVC视图并传递此RecordViewModel。 如何以及何时获取HistoryItems的列表取决于您。

Public class RecordViewModel 
{ 
    public int RecordId { get; set; } 
public string Content { get; set; } 
.... 
public List<RecordHistoryItem> RecordHistory { get; set; } 
}