2013-12-09 40 views
1

我遇到了这个C#代码,它显然允许我通过它们在输入字符串中的名称访问单个方法中的对象属性。我认为它是一个相对较新的C#特性。有人能告诉我它叫什么和参考文档吗?通过名称在字符串中获取属性的C#语法

public class ExamValidation : Exam, IDataErrorInfo 
    { 

//... 
     public string this[string columnName] 
     { 
//--- 
     } 
    } 
+0

http://msdn.microsoft.com/en-us/library/6x16t2tx.aspx –

回答

4

它被称为indexer它不是新的 - 它从一开始就一直在C#中。这只是查找集合中数据的另一种方式(通过字符串而不是整数索引)。

在数据结构中发现数据结构,其中的顺序是的元素与通过字符串键(如字典或数据表(按列名称而不是按顺序查找行数据)来查找数据一样重要)。

+0

请参阅http://msdn.microsoft.com/en-us/library/aa288464(v=vs.71).aspx为更多。 –

2

这就是所谓的indexer它并不是新的。自从该框架的第一次迭代以来,这些就已经存在了。索引器是通常看到与int值,像一个数组,例如,但他们可以接收任何类型。请注意以下文档:

索引器不必通过整数值进行索引;这取决于您如何定义特定的查找机制。

因此,在这种情况下,它正在查找数据与string

1

这是告诉我,该类有一个索引器,所以你可以保存一个数组/值的列表。

相关问题