Articles of inheritance

Entity Framework DB-First, implementar herencia

Estoy tratando de implementar la herencia utilizando entity framework 6.0 y el primer enfoque de la base de datos. OK, digamos que tengo una Person y una entidad de Organization como la siguiente: // a simplified version of organization entity public class Organization { public Guid ID { get; set; } public string Nickname { […]

MVC publica una lista de objetos complejos

Tengo un FeedbackViewModel que contiene una lista de preguntas: public class FeedbackViewModel { public List Questions { get; set; } } Este QuestionViewModel es un objeto que puede ser heredado por 5 tipos diferentes de preguntas public class QuestionViewModel { public string QuestionText { get; set; } public string QuestionType { get; set; } } […]

Interfaces fluidas y herencia en C #

Mostraré un problema con el ejemplo. Hay una clase base con una interfaz fluida: class FluentPerson { private string _FirstName = String.Empty; private string _LastName = String.Empty; public FluentPerson WithFirstName(string firstName) { _FirstName = firstName; return this; } public FluentPerson WithLastName(string lastName) { _LastName = lastName; return this; } public override string ToString() { return […]

C # exponer a la herencia de la interfaz COM

Digamos que tengo una clase BaseClass que implementa IBaseClass Luego tengo una clase de interfaz que hereda IBaseClass. Luego tengo una clase llamada clase que implementa IClass. Por ejemplo: [ComVisible(true), InterfaceType(ComInterfaceType.IsDual), Guid(“XXXXXXX”)] public interface IBaseClass { [PreserveSig] string GetA() } [ComVisible(true), InterfaceType(ComInterfaceType.IsDual), Guid(“XXXXXXX”)] public interface IClass : IBaseClass { [PreserveSig] string GetB() } [ComVisible(true), ClassInterface(ClassInterfaceType.None), […]

ASP.NET MVC 3: DefaultModelBinder con herencia / polymorphism

En primer lugar, perdón por la gran publicación (primero traté de investigar) y por la combinación de tecnologías en la misma pregunta (ASP.NET MVC 3, Ninject y MvcContrib). Estoy desarrollando un proyecto con ASP.NET MVC 3 para manejar algunas órdenes de clientes. En resumen: tengo algunos objetos heredados de y Order clase abstracta y necesito […]

¿Qué está * tan * mal con la herencia de clase de caso?

Mientras buscaba algo más, por mera coincidencia, tropecé con algunos comentarios sobre cómo es la herencia de la clase de caso diabólico. Había algo llamado ProductN , miserables y reyes, elfos y magos, y cómo se pierde algún tipo de propiedad muy deseable con la herencia de las clases de casos. Entonces, ¿qué tiene de […]

¿Cuándo debo usar interfaces en lugar de clases abstractas?

Me preguntaba cuándo debería usar interfaces. Pensemos en lo siguiente: public abstract class Vehicle { abstract float getSpeed(); } y: public interface IVehicle { float getSpeed(); } Puedo implementarlos fácilmente a ambos, tienen la misma funcionalidad … PERO también puedo agregar algunas variables a mi clase de vehículo, que probablemente deberían usarse en un vehículo […]

Definir miembros de campo privado y herencia en el patrón del módulo JAVASCRIPT

Puedo definir campos de miembros privados en un patrón de módulo usando el siguiente código var myClass = function(){ var private_field1,private_field_2; var private_func1 = function(){ //……. } //……… var myObj = { global_field1:2, global_field2:”something”, global_func: function(){//……} } return myObj; }; var obj = myClass(); Este método funciona bien, pero el problema con este problema es […]

¿Cómo ocultar una propiedad heredada en una clase sin modificar la clase heredada (clase base)?

Si tengo el siguiente ejemplo de código: public class ClassBase { public int ID { get; set; } public string Name { get; set; } } public class ClassA : ClassBase { public int JustNumber { get; set; } public ClassA() { this.ID = 0; this.Name = string.Empty; this.JustNumber = string.Empty; } } ¿Qué debo […]

Llamar al constructor de la clase base desde el constructor de la clase derivada

Tengo una pregunta: Digamos que originalmente tengo estas clases que no puedo cambiar (digamos porque están tomadas de una biblioteca que estoy usando): class Animal_ { public: Animal_(); int getIdA() { return idA; }; string getNameA() { return nameA; } private: string nameA; int idA; } class Farm { public : Farm() { sizeF=0; } […]