я знаю, что происходит и почему он выдает ошибку (он не находит метод GetBrokenRules, потому что его список), но причина, по которой я разместил этот вопрос здесь, заключается в том, чтобы попросить лучшего дизайна, может кто-нибудь направить меня сюда, пожалуйста?*
Я работаю над классом объектов (Список .... / Здание / Этаж)
Ошибка:
Ошибка 3 «System.Collections.Generic.List» не содержитможет быть найдено определение для GetBrokenRules и отсутствует метод расширения GetBrokenRules, принимающий первый аргумент типа System.Collections.Generic.List (отсутствует директива using или ссылка на сборку?)
ошибка>>> >>> 1009 * else if (Campus.GetBrokenRules (). Count> 0)
Есть ли лучший способ описать мой GetBrokenRules ()?
ICampus, IBuilding, IFloor состоит из следующих
public interface ICampus
{
List<BrokenBusinessRule> GetBrokenRules();
int Id { get; }
string Name { get; }
}
public interface IFacilities
{
List<BrokenBusinessRule> GetBrokenRules();
List<ICampus> Campus { get; }
List<IBuilding> Building { get; }
List<IFloor> Floor { get; }
}
public class Facilities : IFacilities
{
private List<ICampus> _campus;
private List<IBuilding> _building;
private List<IFloor> _floor;
public List<ICampus> Campus
{
get { return _campus; }
}
public List<IBuilding> Building
{
get { return _building; }
}
public List<IFloor> Floor
{
get { return _floor; }
}
public Facilities(List<ICampus> campus, List<IBuilding> building, List<IFloor> floor)
{
_campus = campus;
_building = building;
_floor = floor;
}
public List<BrokenBusinessRule> GetBrokenRules()
{
List<BrokenBusinessRule> brokenRules = new List<BrokenBusinessRule>();
if (Campus == null)
brokenRules.Add(new BrokenBusinessRule("Facility Campus", "Must have at least one Campus"));
else if (Campus.GetBrokenRules().Count > 0)
{
AddToBrokenRulesList(brokenRules, Campus.GetBrokenRules());
}
if (Building == null)
brokenRules.Add(new BrokenBusinessRule("Facility Building", "Must have at least one Building"));
else if (Building.GetBrokenRules().Count > 0)
{
AddToBrokenRulesList(brokenRules, Building.GetBrokenRules());
}
if (Floor == null)
brokenRules.Add(new BrokenBusinessRule("Facility Floor", "Must have at least one Floor"));
else if (Floor.GetBrokenRules().Count > 0)
{
AddToBrokenRulesList(brokenRules, Floor.GetBrokenRules());
}
}
}