2015-04-04 37 views

回答

0

而不是創建一個存儲過程或在數據庫級的視圖,您可以通過它combaining不同型號使用視圖模型。然後將此ViewModel從Controller返回給View。在View上更改數據後,再次將此ViewModel返回給Controller。你需要的是通過使用lambda表達式加入Controller中的實體,然後將結果作爲ViewModel返回。或者,你可以直接將視圖模型如下:

型號:

public class StudentViewModel 
{ 
    public int ID { get; set; } 

    public string InstituteName { get; set; } 

    public string ContactNameSurname { get; set; } //Added to obtain ContactName and Surname on Index page 

    public string CityName { get; set; } //Added to obtain City Name on Index page 

    //Navigation property 
    public virtual City City { get; set; } 
} 


控制器:

public ActionResult Index_Read([DataSourceRequest] DataSourceRequest request) 
{ 
    var dataContext = repository.Students; 
    var result = dataContext.ToDataSourceResult(request, m => new 
    WebUI.Models.StudentViewModel 
    { 
     ID = m.ID, 
     ContactNameSurname = m.ContactName + " " + m.ContactSurname, 
     InstituteName = m.InstituteName, 
     CityName = m.City.Name     
    } 
); 

    return Json(result, JsonRequestBehavior.AllowGet); 
} 

希望這有助於...

相關問題