从DB获取对象列表,创建ViewModel并通过单个LINQ语句填充其属性

时间:2016-05-16 13:24:45

标签: c# linq lambda

我的数据库中有一系列图书。我想通过查询获取这些集合,创建一个ViewModel并用它们填充它的List属性。

此时我的代码如下:

var collectionList = db.BookCollections.ToList();

var bookCreateViewModel = new BookCreateViewModel()
{
    Collection = collectionList
};

ViewModel有一个属性:

public class BookCreateViewModel
{
    public List<BookCollection> Collection { get; set; }

    ///rest of the code
}

这可以通过单个LINQ语句完成吗? 谢谢!

1 个答案:

答案 0 :(得分:1)

如果您想在一个语句中执行此操作,请在初始化程序中分配查询结果:

var bookCreateViewModel = new BookCreateViewModel()
{
    Collection =  db.BookCollections.ToList()
};