これはばかげた質問かもしれないと感じていますが、存在すると確信している単純な解決策にたどり着くことはできません。
構成ファイルを他のファイルに対して検証する C# クラスがあります。
列挙型で表される 2 種類のエラーが存在する可能性があります。
public enum ErrorType
{
VersionsMismatch,
UnsupportedCombination
}
エラーを表す構造体があります。
public struct ValiditionResult
{
public bool Valid { get; set; }
public string ErrorMessage { get; set; }
public ErrorType ErrorType { get; set; }
public List<ConfProperties> InvalidProperties {get;set;}
}
関数インターフェイスは次のようになります。
public ValiditionResult Validate(string confFile, string progFile)
構造体は、ファイルで必要な修正を表します。
したがって、2 種類の修正がある場合は、それを指定する必要があります。
すべてのエラーが発生したことを示す最良の方法は何ですか (将来的には 2 つ以上になる可能性があります)。
ValidationResult 構造体のリストを返すには? 列挙型の XOR を作成するには? 他のアイデアはありますか?