У меня есть четыре класса:Используя имя интерфейса в членах интерфейса C#
Author.cs
класс т.е.
public class Author : Interfaces.INode
{
public int _aID { get; set; }
public string _aName { get; set; }
public List<CoAuthor> _aCoAuthors { get; set; }
public List<Venue> _aVenue { get; set; }
public List<Paper> _aPapers { get; set; }
public string _aArea { get; set; }
}
CoAuthor.cs
класс т.е.
public class CoAuthor : Interfaces.INode
{
public int _coaID { get; set; }
public string _coaName { get; set; }
public List<Paper> _coaPapers { get; set; }
public string _coaArea { get; set; }
}
Venue.cs
класс т.е.
public class Venue : Interfaces.INode
{
public int _vID { get; set; }
public string _vName { get; set; }
public List<Paper> _vPapers { get; set; }
public string _vArea { get; set; }
}
Paper.cs
класс т.е.
public class Paper : Interfaces.INode
{
public int _pID { get; set; }
public Author _pAuthor { get; set; }
public List<CoAuthor> _pCoAuthors { get; set; }
public Venue _pVenue { get; set; }
public int _pYear { get; set; }
public string _pRField { get; set; }
}
Все эти классы реализации interface
т.е. Interfaces.INode
, который определяется как:
public interface INode
{
List<INode> _TargetObject { get; }
List<INode> _AttributeObject { get; }
}
Теперь Author.cs
класс типа _TargetObject
т.е. определенной в INode
и все другие 3 класса относятся к типу _AttributeObject
, т.е. определены в INode
.
Как я могу связать эти классы с соответствующими INode
членов, как в настоящее время его не ясно, что которые _TargetObject
и _AttributeObject
?
Вы должны быть в состоянии проверить тип и нанести его. –
@ AllanS.Hansen Как это кастинг будет реализован? Будет ли это в классах или в определениях 'interface'? – maliks
Какова цель использования имени 'interface' i.e.' INode' в элементах как 'List'? –
maliks