Guten Abend,
mit folgender Abfrage suche ich einen Datensatz
_appParamItem = _DB.AppParameters.Single(ap => ap.ParName == _inParamName &&
ap.AnwId == aktAnwenderID);
Wenn ein entsprechender Datensatz gefunden wurde kann ich mit _appParamItem ganz normal weiter arbeiten. Wenn der Datensatz nicht vorhanden ist bekomme ich eine Exception.
Wie kann ich überprüfen ob ein Datensatz gefunden wurde, damit ich, wenn dieser nicht vorhanden ist einen neuen Anlegen kann.
Ich dachte, dass ich prüfen kann ob _appParamItem == null ist. aber soweit komme ich erst gar nicht.
Besten Dank für Eure Hilfe
Versuchs mal mit SingleOrDefault()
Dann solltest du auch deinen null Check machen dürfen.
Wenn ein entsprechender Datensatz gefunden wurde kann ich mit _appParamItem ganz normal weiter arbeiten. Wenn der Datensatz nicht vorhanden ist bekomme ich eine Exception.
Genau so, wie es die Doku auch sagt:
Zitat von: IEnumerable.Single(TSource)-Methode
Gibt das einzige Element einer Sequenz zurück und löst eine Ausnahme aus, wenn nicht genau ein Element in der Sequenz vorhanden ist.
Und außerdem steht da noch
Zitat von: IEnumerable.Single(TSource)-Methode
Hinweis:
Die Single<TSource>)(IEnumerable<TSource>)-Methode löst eine Ausnahme aus, wenn die Eingabesequenz leer ist. Um stattdessen null-Verweis (Nothing in Visual Basic) zurückzugeben, wenn die Eingabesequenz leer ist, verwenden Sie SingleOrDefault.
Ein einziger Blick in die Doku und hättest dein Problem leicht selbst lösen können...
dN!3L