这是我的通用清单:
公共类TagType {公共字符串FieldTag;公共int位置;}
List<TagType<dynamic>> TagList = new List<TagType<dynamic>>();
TagList.Add(new TagType<dynamic>() { FieldTag = "ID", Position = posIdStr });
TagList.Add(new TagType<dynamic>() { FieldTag = "PT", Position = posPtStr });
TagList.Add(new TagType<dynamic>() { FieldTag = "ID", Position = posIdStr });
TagList.Add(new TagType<dynamic>() { FieldTag = "EC", Position = posECStr });我正试图为后面的FieldTag (例如: PT)获取位置值。我该怎么做?
发布于 2015-03-14 09:55:43
如果希望在每个项目之后使用LINQ PT获得下一个元素的Position,那么可以用LINQ在一两行中解决它:
var resultTag = TagList.SkipWhile(x => x.FieldTag != "PT").Skip(1).FirstOrDefault();
var resultPosition = resultTag == null ? 0 : resultTag.Position;附加信息:
如果您想将其转换为int,那么只需显式地转换它即可。
var resultTag = TagList.SkipWhile(x => x.FieldTag != "PT").Skip(1).FirstOrDefault();
int resultPosition = resultTag == null ? 0 : (int)resultTag.Position;https://stackoverflow.com/questions/29047477
复制相似问题