Nullable Objekt muss einen Wert haben?
Auf der Linie: bool travel = fill.travel.Value;
ich erhalte die folgende Fehlermeldung:
Nullable Objekt muss einen Wert haben
und ich bin nicht sicher, warum. Alles was ich will zu tun ist, um den Wert in der Datenbank von Reisen, die derzeit falsch. Jede Hilfe würde geschätzt werden.
using (var db = new DataClasses1DataContext())
{
var fill = (from f in db.expenseHdrs
where f.rptNo == getPkRowReport()
select f).FirstOrDefault();
txtReportDesc.Text = fill.description;
txtPeriod.Text = fill.period;
txtPurpose.Text = fill.purpose;
bool travel = fill.travel.Value;
chkTravel.Checked = travel
}
InformationsquelleAutor der Frage Sealer_05 | 2012-05-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Kannst du immer wechseln zu
Bieten Sie den Standardwert (false), oder der Wert des boolean-Spalte aus der Datenbank. Oder Sie können angeben, die standardmäßig mit einer überlastung. So oder so, die null-Werte zulässt, die derzeit nicht haben einen Wert, das ist der Grund, warum Sie diese Ausnahme.
InformationsquelleAutor der Antwort Tejs
Sie versuchen, Zugriff auf das Eigentum von der nicht vorhandenen Objekt (die Füllung aus.Reisen ist null, und Sie ruft prop),
Sie können verwenden Sie coalesce-operator (.Net 4.0):
InformationsquelleAutor der Antwort Val Bakhtin
Erhalten Sie eine
InvalidOperationException
wenn Sie Zugriff auf die null-Werte zulässt.Value-Eigenschaft, wenn die HasValue-Eigenschaft false ist.InformationsquelleAutor der Antwort Peter Ritchie
Können Sie überprüfen, ob nullable-variable hat einen bestimmten Wert, wie dies vor Ihr tatsächlich Zugriff auf seinen Wert
InformationsquelleAutor der Antwort Adil
Den Wert aus der Datenbank ist ein nullable boolean. Wenn Sie anrufen, null-Werte zu.Wert, und den Wert null haben, erhalten Sie diese Ausnahme. Überprüfen Sie die Eigenschaft null-Werte zu.HasValue vor dem Aufruf .Wert.
InformationsquelleAutor der Antwort Oblivion2000
Null, nicht false ist. Siehe Eric Lippert ' s blog-Artikel-Serie über dieses an: http://blogs.msdn.com/b/ericlippert/archive/2012/03/26/null-is-not-false.aspx
Benötigen Sie ein null-Ergebnis in einem falschen, wenn Sie so wollen, um es zu übersetzen.
Machen diesem Fall klar ist, betrachten Sie diesen code:
Oder benutzen Sie einfach das Val Bachtins Lösung, wenn Sie verwenden .Net 4
InformationsquelleAutor der Antwort StarPilot