0

想在一个视图中使用两个模型。我有两个控制器,一个用于当前用户

 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; }
    }

第二个朋友

 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();

但视觉工作室在 .ToList() 上给出错误

错误:

Cannot implicitly convert type 'System.Collections.Generic.List<NGGmvc.Models.FriendsModel>' to 'NGGmvc.Models.FriendsModel'

请告诉我一些如何在单个视图中显示两个模型的方法。

ps im 使用 mvc3 razor 视图引擎

谢谢

4

3 回答 3

1

更正您的 ViewModel

public class FullProfileModel 
    {
        public ProfileModel ProfileModel { get; set; }
        public IList<FriendsModel> FriendModels { get; set; }
    }
于 2012-05-07T10:33:21.817 回答
1

我觉得你需要收藏

public class FullProfileModel 
{
    public ProfileModel ProfileModel { get; set; }
    public List<FriendsModel> FriendModels { get; set; }
}
于 2012-05-07T10:33:36.377 回答
1

您正在尝试设置值为 List 的 FriendsModel 类型的属性。

 public FriendsModel FriendModel { get; set; }

改成:

public class FullProfileModel 
    {
        public ProfileModel ProfileModel { get; set; }
        public IList<FriendsModel> FriendModel { get; set; }
    }
于 2012-05-07T10:35:13.017 回答