извините, я не имел дело с дженериком в c #
в соответствии с этим вопросом , как сделать коллекцию generc
которые реализуют два интерфейса
Я искал прямой путь, как это: конечно, он делает ошибку и совершенно не так.
interface IEmployee {void DisplayInfo();}
interface ISalary {void CalculateSalary();}
class Nurse : IEmployee, ISalary
{
//some Implementation
}
class Doctor : IEmployee, ISalary
{
//some Implementation
}
class EntryPoint
{
static void Main(string[] args)
{
System.Collections.Generic .List<T> employees where T: ISalary,IEmployee
=new System.Collections.Generic .List<T>();
}
Nurse oNurse = new Nurse();
Doctor oDoctor = new Doctor();
employees.Add(oNurse);
employees.Add(oDoctor);
}
после некоторого чтения я обнаружил, что, возможно, сначала я должен определить общий класс, подобный этому:
public class HospitalEmployee<T> where T : IEmployee, ISalary
{
}
и, к сожалению, это не работает, теперь я в замешательстве и не знаю, что именно делать, пожалуйста, помогите, спасибо