he un objeto que implementa dos interfaces ... Las interfaces son:Especificación de múltiples interfaces para un parámetro
public interface IObject
{
string Name { get; }
string Class { get; }
IEnumerable<IObjectProperty> Properties { get; }
}
public interface ITreeNode<T>
{
T Parent { get; }
IEnumerable<T> Children { get; }
}
tal que
public class ObjectNode : IObject, ITreeNode<IObject>
{
public string Class { get; private set; }
public string Name { get; private set; }
public IEnumerable<IObjectProperty> Properties { get; set; }
public IEnumerable<IObject> Children { get; private set; }
public IObject Parent { get; private set; }
}
ahora tengo una función que necesita uno de sus parámetros para implementar estas dos interfaces. ¿Cómo voy a especificar eso en C#?
Un ejemplo sería
public TypedObject(ITreeNode<IObject> baseObject, IEnumerable<IType> types, ITreeNode<IObject>, IObject parent)
{
//Construct here
}
O es el problema de que mi diseño es un error y que debería estar llevando a cabo tanto en los interfaces en una interfaz de alguna manera
"Ahora tengo una función que necesita uno de sus parámetros para implementar ambas interfaces." Las funciones o parámetros no implementan interfaces, las clases implementan interfaces. ¿Qué quieres decir? – McKay
ver las ediciones. Sé que solo las clases pueden implementar interfaces – TerrorAustralis
posible duplicado de [¿Es posible hacer que un parámetro implemente dos interfaces?] (Http://stackoverflow.com/questions/772053/is-it-possible-to-make-a- parameter-implement-two-interfaces) –