public abstract class Rule { protected Rule() { Nodes = new List<Node>(); } public List<Node> Nodes { get; private set; } public int NumberOfElements { get; set; } public abstract Result<Rule> Validate(IEnumerable<Node> validUnits); }
지금, 또한 내가 가지고
public class MinNumberOfCredits : Rule { public override string ToString() { return string.Format(NumberOfElements); } public override Result<Rule> Validate(IEnumerable<Node> validUnits) { var totalCredits = validUnits.Sum(x => x.Credits); return NumberOfElements > totalCredits ? new Result<MinNumberOfCredits>(ResultMessage.Fail, NumberOfElements) : new Result<MinNumberOfCredits>(); } }
문제가 내 반환 형식이 Result<Rule>
만에 있다는 것입니다 특정 클래스 i는 Result<MinNumberOfCredits>
을 반환해야합니다.
왜 결과를 반환해야합니까? –
왜 반환 유형을 '결과'로 변경할 수 없습니까? –
dotNETbeginner
결과와 결과 은 다른 것들이므로 기본 클래스에는 기본 규칙 만 있습니다. –
user872761