C#中的VB默认属性是什么?

C#中的VB默认属性是什么?,c#,vb.net,C#,Vb.net,找到一个例子,我不明白它的意思 我不知道如何将接口和两个类转换为C# 编辑:下面是我想转换成C的代码: 像这样的东西会起作用,不清楚“默认属性”是什么意思: var loadedItems = new List<Item>(); SqlDataReader dr = GetItemsDataReader(); while(dr.Read()){ Item item = GetItemFromData(dr); loadedItems.Add(item); } privat

找到一个例子,我不明白它的意思

我不知道如何将接口和两个类转换为C#

编辑:下面是我想转换成C的代码:


像这样的东西会起作用,不清楚“默认属性”是什么意思:

var loadedItems = new List<Item>();
SqlDataReader dr = GetItemsDataReader();
while(dr.Read()){
  Item item = GetItemFromData(dr);
  loadedItems.Add(item);
}

private Item GetItemFromData(SqlDataReader dr){
  var loadedItem = new Item();
  loadedItem.ID = dr["ID"];
  loadedItem.Name = dr["Name"];
  'etc., etc.'
  Return loadedItem
}
var loadedItems=new List();
SqlDataReader dr=GetItemsDataReader();
while(dr.Read()){
项目=GetItemFromData(dr);
loadedItems.Add(项目);
}
私有项GetItemFromData(SqlDataReader dr){
var loadedItem=新项();
loadedItem.ID=dr[“ID”];
loadedItem.Name=dr[“Name”];
“等等,等等”
返回loadedItem
}

据我所知,没有等效的。有关该关键字的更多信息,请访问MSDN

你在这里看到的是一个例子

转换后的代码如下所示:

interface IIndexer
{
    object this[string index] { get; }
}

class DataReaderWrapper : IIndexer
{
    private readonly IDataReader _reader;
    public DataReaderWrapper(IDataReader reader)
    {
        _reader = reader;
    }

    public object this[string index]
    {
        get { return _reader[index]; }
    }
}

class DataRowWrapper : IIndexer
{
    private readonly DataRow _row;
    public DataRowWrapper(DataRow row)
    {
        _row = row;
    }

    public object this[string index]
    {
        get { return _row[index]; }
    }
}

C#中没有类似的VB.NET默认属性。Matti您想转换什么。。为什么不将您试图转换或想要转换的代码粘贴到这里..这应该“回答”了
default
属性的问题:我没有意识到VB.NET不是人类可读的。@Oded我曾经在VB6中编写代码,然后在VB.NET中编写了几年,现在我简直无法忍受它。我的意思是:default ReadOnly属性项(ByVal index As String)@Oded:在我在web中发现的示例中,它们的结尾总是有类似于integer的类型,但接口的项没有。我猜C#等价物应该是
private Item this[int idx]{get{…}}
谢谢Echilon。我试图将此信息与示例的其余部分相匹配。非常感谢!这看起来是我需要的。
interface IIndexer
{
    object this[string index] { get; }
}

class DataReaderWrapper : IIndexer
{
    private readonly IDataReader _reader;
    public DataReaderWrapper(IDataReader reader)
    {
        _reader = reader;
    }

    public object this[string index]
    {
        get { return _reader[index]; }
    }
}

class DataRowWrapper : IIndexer
{
    private readonly DataRow _row;
    public DataRowWrapper(DataRow row)
    {
        _row = row;
    }

    public object this[string index]
    {
        get { return _row[index]; }
    }
}