我使用通用 ORM 列表 例子。
这是我的 table 。
Person table
Guid
Name
LastName
这是我的结构类。
public struct PersonItem // database and class field names are the same
{
public Guid Guid{ get; set; }
public string Name { get; set; }
public string LastName { get; set; }
}
public struct PersonItems
{
public PersonItems()
{
Items = new List<PersonItem>();
}
public List<PersonItem> Items { get; set; }
}
我正在使用这样的,没有问题,但我总是必须写字段
public PersonItems GetPersons()
{
var query = (from p in _DbEntities.t_Crew
select p).ToList();
if (query != null)
{
foreach (var item in query)
{
_PersonItems.Items.Add(new PersonItem
{
Guid = item.Guid,
Name = item.Name,
LastName = item.LastName
});
}
}
return _PersonItems;
}
public PersonItems GetPersons()
{
PersonItems personItems = new PersonItems();
var query = from p in _DbEntities.t_Person
select p; >> this here query I need to convert linq query result to list
personItems = query.ToList();
return personItems ;
}
error
无法将 System.Collections.Generic.List' 类型隐式转换为 PersonData.PersonItems'。
最佳答案
试试这个
public PersonItems GetPersons()
{
PersonItems personItems = new PersonItems();
var query = (from p in _DbEntities.t_Person
select new PersonItems
{
test = p.SomeName,
//Other Stuff
//...
}).ToList();
return query;
}
关于linq - 如何将LINQ查询结果转换为列表并返回通用列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21597097/