我注意到在mvc3中使用linq時存在一些不規則性。linq無法從數據庫中找到值,雖然它存在於數據庫中
我有一個「PIN」列的數據庫表。列必須有28個字符,並且可以存儲完整的隨機字符。然後,我有一個控制器的動作:
Function Unlock() As ActionResult
Dim key As String = Request("token")
If key IsNot Nothing Then
Dim user As Users = db.Users.SingleOrDefault(Function(u) u.PIN = key)
If user IsNot Nothing Then
user.PIN = Nothing
db.SaveChanges()
Return View()
End If
End If
Return RedirectToAction("Index", "Home", New With {.Area = ""})
End Function
例如,當PIN舉辦的「鈷/ 5c1mmil2e + clGK3c6JvdrGpQ =」密鑰字符串讀取從查詢字符串滿弦,但用戶參考最終總是什麼都沒有,即使是相同的值存儲在數據庫中。
另一方面,當PIN持有「GbgI4QAaYWanaKWUm6j7Jg5IpA8 =」時,一切正常。所以我想,linq可能會遇到像/或+這樣的字符問題,但是如何解決這個問題呢?
更合理,我試着用「==」 – bhuvin 2012-07-18 10:06:30
@bhuvin取代單一的「=」:這是VB.NET,不存在== – 2012-07-18 10:09:52
喔@DanielHilgarth - 對不起人... – bhuvin 2012-07-18 10:10:22