我是一个相对新手的C#编程者,需要一些帮助。
我正在尝试将我从JSON源获取的值分配给我的自定义类型,这个类型是一个类,其中我已经定义了某些字段(属性)来存储JSON元素,以及从正则表达式匹配过程中得出的元素。这将允许我使用LINQ访问对象,因为我正在使用List来保存我的对象。
我的代码中有一个foreach循环,循环遍历我的正则表达式方法找到的每个匹配项。我只对JSON源中有匹配项的部分感兴趣。
所以,我的自定义类如下:
//simple field definition class
public class TwitterCollection
{
public string origURL { get; set; }
public string txtDesc { get; set; }
public string imgURL { get; set; }
public string userName { get; set; }
public string createdAt { get; set; }
}
然后我想在正则表达式匹配循环中填充列表:
foreach (Match match in matches)
{
GroupCollection groups = match.Groups;
var tc = new List<TwitterCollection>()
{
origURL = groups[0].Value.ToString(),
txtDesc = res.text,
imgUrl = res.profile_image_url,
userName = res.from_user_id,
createdAt = res.created_at,
};
}
代码将继续通过Linq to Objects提取和排序结果。但编译器实际上不允许我创建
var tc = new List<TwitterCollection>()
,因为:'System.Collections.Generic.List'不包含“origURL”的定义……即使我已经定义了它。如果我只写
new TwitterCollection
,它不会标记错误,但是我如何在稍后的Linq表达式中引用它呢?请帮忙!