我有一个看起来像这样的课程:
public class BasePadWI
{
public WorkItem WorkItemReference { get; set; }
.... Other stuff ......
}
Run Code Online (Sandbox Code Playgroud)
然后我有一个字典,定义如下:
public Dictionary<BasePadWI, Canvas> Pad { get; set; }
Run Code Online (Sandbox Code Playgroud)
我想打个电话:
List<WorkItem> workItems = Pad.Keys.ToList();
Run Code Online (Sandbox Code Playgroud)
(注意:WorkItem
是一个密封的类,所以我不能继承.)
我是否可以在课堂上做些诡计让它看起来像WorkItem
?
我在此期间做到了这一点:
List<WorkItem> workItems = Pad.Keys.ToList().ConvertAll(x=>x.WorkItemReference );
Run Code Online (Sandbox Code Playgroud)
你可以做:
List<WorkItem> workItems = Pad
.Keys
.Select(basePad => basePad.WorkItemReference)
.ToList();
Run Code Online (Sandbox Code Playgroud)
这使用LINQ来动态提取您的成员.