Реализация свойств интерфейса в интерфейсахC#

Место общения программистов C#
Anonymous
Реализация свойств интерфейса в интерфейсах

Сообщение Anonymous »

Мне нужно создать файл DLL, который содержит все интерфейсы классов, но не содержит никакого класса.public interface IClassA
{
string Word { get; }
}

public interface ITest where TClassA : IClassA
{
TClassA A { get; }
}
< /code>

Пример двух классов, которые реализуют эти интерфейсы так, как я хочу: < /p>

public class ClassA : IClassA
{
public string Word
{
get;
private set;
}

public string Sentence
{
get;
private set;
}

public ClassA(string word, string sentence)
{
this.Word = word;
this.Sentence = sentence;
}
}

public class Test : ITest
{
public ClassA A
{
get;
private set;
}

public Test(ClassA a)
{
this.A = a;
}
}
< /code>

И я хочу сделать что -то подобное в основной программе: < /p>

public static void Main(string[] args)
{
ClassA a = new ClassA("hey", "hey world!");
Test t = new Test(a);

Print((ITest)t);
}

public static void Print(ITest t)
{
Console.WriteLine(t.A.Word);
}
< /code>

Но это литье: (itest ) t < /code> допускает ошибку времени выполнения.>

Подробнее здесь: https://stackoverflow.com/questions/400 ... interfaces

Вернуться в «C#»