我有一個簡單的實體查詢:避免出錯時,從實體查詢沒有結果
Dim rhcexists = From p In dbContracts.Signatures _
Where p.StudentID = people_code_id _
And p.ContractType = "rhc" _
Order By p.ID Descending _
Select p
我再檢查的結果值中的一個是否比半年前使用if..then像這樣更近:
If rhcexists.First.SignatureDate > Date.Today.AddMonths(-6) Then
End If
但是,如果沒有返回結果,則會返回錯誤。如果沒有價值,我是否有辦法讓它像日期超過六個月那樣行事?例如,我能僞像做:
If Exists(rhcexists.First.SignatureDate, Date.Today.AddMonths(-8)) > Date.Today.AddMonths(-6) Then
結束如果
如何設置FirstOrDefault值是一個日期?它不斷回來說webHousing.Signatures不能成爲Date.Today。 – davemackey 2011-03-14 17:53:24
@davemackey:目前尚不清楚你的意思。你在* query *上調用'FirstOrDefault()',所以結果將會是查詢返回的類型 - 猜測,簽名或類似的東西。請注意,在我的代碼中,我在'first'上使用'SignatureDate'屬性。 – 2011-03-14 17:55:10
好吧,我將它更改爲您的代碼示例,但隨後出現運算符<>未爲此類型定義的錯誤(webHousing.Signature)。 – davemackey 2011-03-14 18:03:06