我想用一個linq語句將一個userName從我的數據庫中拉出一個字符串。但是我不斷收到錯誤。轉換爲Guid,但接收不能轉換爲int錯誤
這是我收到的錯誤:
無法隱式轉換「字符串」到「廉政」
這是很奇怪的,因爲我想將其轉換爲一個GUID,不一個int。
這裏是代碼:
string ticketChange = "The following change(s) have been made by " + db.Users.Where(u => u.UserId == new Guid["LoggedUserID"]).First().FullName + Environment.NewLine;
我收到了「loggedUserID」目前是一個字符串錯誤。
這裏是我在用戶登錄時定義LoggedUserID的代碼(我知道這不是執行此操作的最佳方式,我將在未來進行更改,但我需要儘快修復此問題)。它會拉出數據庫中的用戶ID並將其保存爲字符串。
Session["LoggedUserID"] = v.UserId.ToString();
我也曾嘗試:
Guid.NewGuid(["LoggedUserID"])
但對於NewGuid可以接收任意參數沒有重載方法。
u.UserID是Guid。那麼,在這種情況下,如何將字符串轉換爲Guid?
嗨克里斯。我更新了我的問題以包含LoggedUserID爲 – djblois
然後,您需要執行類似'new Guid(Session [「LoggedUserID」])''的操作。然而,這是非常脆弱的,所以你應該把它包裝在try-catch塊中,並處理會話變量爲空或者由於某種原因非標準的場景。 –