想在一个视图中使用两个模型。我有两个控制器,一个用于当前用户
public class ProfileModel
{
public int ID { get; set; }
public decimal Balance { get; set; }
public decimal RankNumber { get; set; }
public decimal RankID { get; set; }
public string PorfileImgUrl { get; set; }
public string Username { get; set; }
}
和第二次为firends
public class FriendsModel
{
public int ID { get; set; }
public string Name { get; set; }
public string ProfilePictureUrl { get; set; }
public string RankName { get; set; }
public decimal RankNumber { get; set; }
}
个人资料模型总是包含一个项目,而朋友模型包含列表
我制作了包含两种模型的新模型:
public class FullProfileModel
{
public ProfileModel ProfileModel { get; set; }
public FriendsModel FriendModel { get; set; }
}
我尝试像这样填写FullProfile模型
List<FriendsModel> fmList = GetFriendsData(_UserID);
FullProfileModel fullModel = new FullProfileModel();
fullModel.ProfileModel = pm;
fullModel.FriendModel = fmList.ToList();
但是visual studio在.ToList()
上给出了错误错误:
Cannot implicitly convert type 'System.Collections.Generic.List<NGGmvc.Models.FriendsModel>' to 'NGGmvc.Models.FriendsModel'
请告诉我如何在单一视图中显示两个模型。
P.S。即时通讯使用mvc3剃刀视图引擎
由于
答案 0 :(得分:1)
更正您的ViewModel
public class FullProfileModel
{
public ProfileModel ProfileModel { get; set; }
public IList<FriendsModel> FriendModels { get; set; }
}
答案 1 :(得分:1)
我认为你需要收藏
public class FullProfileModel
{
public ProfileModel ProfileModel { get; set; }
public List<FriendsModel> FriendModels { get; set; }
}
答案 2 :(得分:1)
您正尝试使用值List设置FriendsModel类型的属性。
public FriendsModel FriendModel { get; set; }
更改为:
public class FullProfileModel
{
public ProfileModel ProfileModel { get; set; }
public IList<FriendsModel> FriendModel { get; set; }
}