当我尝试在BuildTypes方法中投射投影列表时,我得到一个空值列表。我也试过使用.Cast(),但是我得到一个错误,一些属性不能被转换。如果有帮助,我可以发布该错误。这里是我的代码:使用LINQ投射投影列表返回空值列表?
public class AuditActionType: EntityValueType
{
}
private List<T> BuildTypes<T>(XDocument xDocument) where T: EntityValueType
{
var types =
(from ty in xDocument.Descendants("RECORD")
select new
{
Id = GenerateGuid(),
Name = ty.Element("Name").Value,
EntityStatus = _activeEntityStatus,
DateCreated = DateTime.Now,
DateModified = DateTime.Now
} as T).ToList();
return types;
}
所以,我只能说这是这样的:
var auditActorTypes = BuildTypes<AuditActorType>(auditActorTypesXml)
我有一吨重的类型,我需要从一个XML文件中提取,并没有想复制代码每种类型。
+1殴打我给它。可能值得一提的是,'Id' /'Name'/etc需要存在于'EntityValueType'上。 –
@ J.Kommer:好点。 –