Ich habe ein System, wo die employeeId immer existieren muss, es sei denn, es gibt ein zugrunde liegendes Problem.C# Throw Ausnahme bei Verwendung Assert?
So wie ich es sehe, ist, dass ich zwei Möglichkeiten diesen Code zu überprüfen:
1:
public void GetEmployee(Employee employee)
{
bool exists = EmployeeRepository.VerifyIdExists(Employee.Id);
if (!exists)
{
throw new Exception("Id does not exist");
}
}
oder 2:
public void GetEmployee(Employee employee)
{
EmployeeRepository.AssertIfNotFound(Employee.Id);
}
Ist Option # 2 akzeptabel die C# Sprache?
Ich mag es, weil es in das ordentlich ist Ich mag nicht zu „throw new Exception suchen (“ bla bla bla ") geben Meldungen outsite den Klassenbereich.
Warum lässt Ihre VerifyIdExists-Methode nicht die Ausnahme in Ihrem Namen auslösen? – Tejs
Ich glaube nicht, dass etwas falsch ist mit dem, was Sie außer IMHO haben Ich würde den Namen in ThrowIfNotFound ändern. Ich nehme an, das ist etwas, das Sie sowohl in den Release-Build als auch in Ihren Debug-Build einbeziehen möchten. –