ObjectSetting defaultSetting = new ObjectSetting();
defaultSetting.Value = "false";
defaultSetting.ObjectTypeSetting = db.ObjectSettings.First(ots => ots.Name == "PropName");
ObjectSetting testSetting = obj.ObjectSettings.DefaultIfEmpty(defaultSetting)
.FirstOrDefault(os => os.ObjectTypeSetting.Name == "PropName");
我的最終實施將略有不同,但我的問題是,testSetting應該是類型ObjectSetting的填充物以「假」值,如果LINQ的結果表達式是空的,我得到的結果是testSetting爲null。FirstOrDefault LINQ擴展默認項爲空,即使宣佈
我已經檢查過類似情況下的S/O,我也檢查了msdn文檔,我覺得我正在實施正確,但顯然我不是。
對於未來的問題,這將真正幫助,如果你可以提供一個簡短但完整的實現 - 在使用較短的名稱您示例代碼將有助於提高Stack Overflow上可用的相對較小的空間的可讀性。 –