Clase con indizador y propiedad llamada “Artículo”

¿Es posible crear una clase en .NET 4 con:

  1. un indexador,
  2. una propiedad llamada “Artículo”?

Por ejemplo, esta clase C # no comstackrá para mí:

public class MyClass { public object Item { get; set; } public object this[string index] { get { return null; } set { } } } 

El comstackdor da un error CS0102 :

El tipo ‘MyClass’ ya contiene una definición para ‘Artículo’

aunque solo estoy definiendo explícitamente Item una vez.

    Basado en este sitio , es posible usar un atributo para cambiar el nombre del indexador

     public class MyClass { public object Item { get; set; } [System.Runtime.CompilerServices.IndexerName("MyItem")] public object this[string index] { get { return null; } set { } } } 

    C # internamente crea una propiedad llamada Item para los idiomas que no son compatibles con el indexador. Puede controlar este nombre usando IndexerNameAttribute , así:

     [IndexerName("MyIndexer")] public object this[string index] { get { return blah; } } 

    Si recuerdo correctamente, se puede acceder a dicho indexador desde VB.Net a través de un método de “Artículo ()”. De ahí procedería ese “definido dos veces”.