Asp.net 如何将值传递给视图模型
我有一个2视图模型,FacilityRoomViewModel和NewRoomViewModel,如何在控制器中通过服务将值从FacilityRoomViewModel传递给NewRoomViewModel 这是我的观点模型Asp.net 如何将值传递给视图模型,asp.net,asp.net-mvc,asp.net-mvc-3,asp.net-mvc-4,Asp.net,Asp.net Mvc,Asp.net Mvc 3,Asp.net Mvc 4,我有一个2视图模型,FacilityRoomViewModel和NewRoomViewModel,如何在控制器中通过服务将值从FacilityRoomViewModel传递给NewRoomViewModel 这是我的观点模型 namespace XNet.WebUI.Hotel.ViewModel { public class FacilityInRoomViewModel { public int RoomFacilityID { get; set; }
namespace XNet.WebUI.Hotel.ViewModel
{
public class FacilityInRoomViewModel
{
public int RoomFacilityID { get; set; }
public string RoomFacilityName { get; set; }
public bool RoomFacilityAvailable { get; set; }
}
public class ListFacilityInRoom
{
public List<FacilityInRoomViewModel> listRoomFacility { get; set; }
}
}
namespace XNet.WebUI.Hotel.ViewModel
{
public class NewRoomViewModel
{
public int HotelID { get; set; }
[Required(ErrorMessage = "*")]
public string RoomTypeName { get; set; }
[Required(ErrorMessage = "*")]
public string RoomTypeDescription { get; set; }
public List<FacilityInRoomViewModel> facilityinRoom { get; set; }
}
}
查看您拥有的功能,就像您试图将FacilityInRoomViewModel传递给
public static NewRoomViewModel Build2(List<FacilityInRoomViewModel> list)
{
NewRoomViewModel model = new NewRoomViewModel();
model.facilityinRoom = list;
return model;
}
嗨,novian,我会稍微重命名变量,以使示例代码更清晰。例如,var showNewRoomViewModel不是您提到的两个ViewModel之一。另外,传入View()方法的模型应该是ViewModel。你能给我举个例子吗??请注意,我没有真正了解您的问题我有两个viewmodel,我想从控制器将值从一个viewmodel传递到另一个viewmodel。我无法从控制器将值传递到build2。当我将值从facilitiesInRoom传递到NewRoom时,无法将newRoomViewModel转换为ListFacilityInRoom
public List<RoomFacility> showNewRooms()
{
List<RoomFacility> showNewRoomViewModel = _RoomFacilityRepository.AsQueryable().ToList();
return showNewRoomViewModel;
}
public ActionResult NewRoom()
{
var showNewRoomViewModel = _RoomTypeService.showNewRooms();
ListFacilityInRoom model = FacilityInRoomBuilder.Build(showNewRoomViewModel);
return View(model);
}
public static NewRoomViewModel Build2(List<FacilityInRoomViewModel> list)
{
NewRoomViewModel model = new NewRoomViewModel();
model.facilityinRoom = list;
return model;
}
public ActionResult NewRoom()
{
var showNewRoomViewModel = RoomTypeService.showNewRooms();
ListFacilityInRoom model = FacilityInRoomBuilder.Build(showNewRoomViewModel);
var newroomviewmodel=FacilityInRoomBuilder.Build2(showNewRoomViewModel.listRoomFacility);
return View(newroomviewmodel);
}