如何赋值给List在一个模型里面

本文关键字:一个 模型 何赋值 赋值 List string | 更新日期: 2023-09-27 18:04:22

我的模型就像他的

public class MovieListModel
{        
    public int Id { get; set; }
    public List<string> FilePathList { get; set; }
    public string FileName { get; set; }
    public string Extension { get; set; }
    public string Size { get; set; }
    public DateTime CreatedTime { get; set; }
    public DateTime ModifiedTime { get; set; }
}

我需要添加赋值给上述模型,但问题是将值添加到模型内部的字符串列表,列表FilePathList。我需要这样的东西

var obj = new MovieListModel()
 {
    FileName = fi.Name,
    FilePathList = , //  Need to add value here.
    Count = 1,
    Extension = fi.Extension,
    Size = Helper.FormatBytes(fi.Length),
    CreatedTime = fi.CreationTime,
    ModifiedTime = File.GetLastWriteTime(item)
};
movieList.Add(obj);

如何赋值给List<string>在一个模型里面

这是一种方法:

var obj = new MovieListModel()
{
    FileName = fi.Name,
    FilePathList = new List<string>() { "Value" }, //  Need to add value here.
    Count = 1,
    Extension = fi.Extension,
    Size = Helper.FormatBytes(fi.Length),
    CreatedTime = fi.CreationTime,
    ModifiedTime = File.GetLastWriteTime(item)
};
movieList.Add(obj);
var obj = new MovieListModel()
            {
                FileName = fi.Name,
                FilePathList = new List<string> {
                    // Add value here
                },
                Count = 1,
                Extension = fi.Extension,
                Size = Helper.FormatBytes(fi.Length),
                CreatedTime = fi.CreationTime,
                ModifiedTime = File.GetLastWriteTime(item)
            };

这是你需要的吗

var obj = new MovieListModel()
                {
                    FileName = fi.Name,
                    FilePathList = new List<string>(){ obj, whatever...},
                    Count = 1,
                    Extension = fi.Extension,
                    Size = Helper.FormatBytes(fi.Length),
                    CreatedTime = fi.CreationTime,
                    ModifiedTime = File.GetLastWriteTime(item)
                };

试试这样。通过创建一个函数,您将能够向它传递任意数量的参数,并获得所需的输出-

var obj = new MovieListModel()
            {
                FileName = fi.Name,
                FilePathList = MapMyStrings(fi.prop1, fi.prop2),
                Count = 1,
                Extension = fi.Extension,
                Size = Helper.FormatBytes(fi.Length),
                CreatedTime = fi.CreationTime,
                ModifiedTime = File.GetLastWriteTime(item)
            };
List<string> MapMyStrings(params string[] objs){
     if(!objs.Length > 0) return null;
     return objs.ToList();
}

我知道上面的答案可以回答你的问题,但我只是想向你展示这个,以防你想要放在那个列表中不是一个文字字符串(所以如果你需要转换)

var obj = new MovieListModel()
{
    FileName = fi.Name,
    FilePathList = new List<string> { "Test", "Test1", fi.CreatedTime.ToString() /* use of .ToString() to convert other objects to string*/} /* and so on and so on */, 
    Count = 1,
    Extension = fi.Extension,
    Size = Helper.FormatBytes(fi.Length),
    CreatedTime = fi.CreationTime,
    ModifiedTime = File.GetLastWriteTime(item)
};
movieList.Add(obj);

希望这对你有帮助!