我想将字符串的内容用作语句,例如:
string exampleString = "exampleStatement";
exampleString.exampleMethod();
在我的实际程序中使用它是
XmlReader reader = XmlReader.Create(url);
SyndicationFeed feed = SyndicationFeed.Load(reader);
reader.Close();
string field = "PublishDate";
foreach (SyndicationItem item in feed.Items)
{
data = item.field.ToString();
}
return data;
这可能吗?
答案 0 :(得分:2)
您可以使用反射
item.GetType().GetProperty(field).GetValue(item).ToString();
(或GetField()
代替GetProperty()
,如果......那是一个字段)
答案 1 :(得分:1)
这可能不像在ecmascript中那样是微不足道的。最简单的选择是反射,例如:
data = item.GetType().GetProperty(field).GetValue(item).ToString();
但是:根据所涉及的API,可能还有其他可用的选项涉及索引器等。请注意,反射比常规成员访问慢 - 如果您在非常高的使用情况下执行此操作,则可能需要更优化的实现。它(反射)通常足够快,可以轻度使用。