我遇到了一个DbParameterCollection对象,该对象应该具有从IList继承的“Item”属性,但IntelliSense不会显示此对象具有Item属性。这有什么不对?
答案 0 :(得分:5)
来自MSDN:
C#语言使用this关键字 定义索引器而不是 实现Item属性。视觉 Basic实现Item作为默认值 财产,提供相同的 索引功能。
换句话说,它是一个C#语法的东西。只需使用list[index]
代替list.Item(index)
即可设置。
答案 1 :(得分:2)
可能是因为使用“Item”属性(VB)或索引器(C#)的语法与“普通”属性的语法略有不同。
在VB.NET中,您将访问IList中的项目,如下所示:
myCollection(index) = someValue
在C#中它看起来像这样:
myCollection[index] = someValue;