Articles of generics

Cómo pasar 2 tipos generics a un método de extensión

He creado el siguiente método de extensión public static T Map(this TEntity entity) where TEntity : IEntity { return Mapper.Map(entity); } Esto permite lo siguiente Db.ExchangeSets.FirstOrDefault().Map() Sin embargo, me pregunto si de todos modos puedo modificar el método de extensión para poder llamar a una versión en corto de la siguiente manera Db.ExchangeSets.FirstOrDefault().Map() Tenga en […]

C # no es un tipo asignable – Genéricos

Así que simplemente estoy tratando de piratear con un tipo de máquina de estado en el que estaba trabajando y, principalmente, solo quería probar el método Activator.CreateInstance para ver cómo era, y me encontré con un problema en el que no puedo usar la cláusula where como yo pensaria Me disculpo antes de tiempo si […]

Cómo devolver IEnumerable desde el servicio web

Me preguntaba por qué no puedo devolver un IEnumerable través de un servicio web. En mi servicio web devuelvo un IEnumerable pero cuando IEnumerable el IntelliSense en VS 2010 veo que me está dando una T[] . ¿Alguien me puede dar una explicación para este comportamiento?

Herencia de C # en pregunta de generics

Tengo dos interfaces: public interface A { void aMethod(); } public interface B : A { void bMethod(); } Más tarde, básicamente estoy usando un diccionario como este: Dictionary dict = new Dictionary(); C # está diciendo que no puedo convertir de derecha a izquierda, incluso si lo lanzo. ¿Hay alguna forma de usar los […]

ASP.NET MVC 3 Generic DisplayTemplates

Acabo de comenzar un proyecto con ASP.NET MVC 3. Estoy construyendo sobre un sistema de objetos existente, por lo que una de las primeras cosas que debo hacer es definir plantillas de visualización y editor para los diversos tipos que existen. ¿Es posible en MVC definir un DisplayTemplate con un argumento genérico? Por ejemplo, tenemos […]

Inicialización de campos estáticos generics

Solo tengo curiosidad por el siguiente código: public static class Container { public static readonly T[] EmptyArray = new T[0]; } Como he entendido, el contenedor de la clase estática se inicializará cuando se ejecute el siguiente código: … var emptyArray = Container.EmptyArray; … Estoy en lo cierto Cualquier explicación sobre la inicialización de clases […]

Cómo acceder a las propiedades de una clase desde un método genérico – C #

Tengo una clase tres que tiene propiedades siguientes Class A { public int CustID { get; set; } public string Name{ get; set; } } Class B { public int CustID { get; set; } public string Age { get; set; } } Creé un método genérico que acepta todas estas clases. public void ProceesData(IList […]

C #: Interfaz genérica para números

Estoy intentando realizar una manipulación numérica independiente del tipo de número. Sin embargo, no conozco ninguna forma de usar los generics para hacer esto. La primera idea fue filtrar los tipos entrantes con una instrucción where, pero todos los tipos de números están cerrados y, por lo tanto, no son válidos para un filtro genérico. […]

Restricciones de atributos en generics de C #

Tengo la siguiente statement de método: public static bool SerializeObject(string filename, T objectToSerialize){ Quiero restringir T a tipos decorados con el atributo [Serializable] . Lo siguiente no funciona porque “Attribute ‘System.SerializableAttribute’ no es válido en este tipo de statement. Es válido solo en las declaraciones de ‘Clase, Enum, Estructura, Delegado’.”: public static bool SerializeObject(string filename, […]

Evito un tipo específico utilizando restricciones genéricas.

Tengo un método de sobrecarga: la primera implementación siempre devuelve un solo objeto, la segunda implementación siempre devuelve una enumeración. Me gustaría hacer que los métodos sean generics y sobrecargados, y que el comstackdor no intente vincularse con el método de no enumeración cuando el tipo genérico es enumerable … class Cache { T GetOrAdd […]