在我的第一個MVC
應用程序上工作。我正在使用MVC4附帶的簡單成員資格數據庫來管理用戶和角色。我的理解是,我必須爲以下Find()
電話執行三個步驟才能工作:獲取登錄人員的簡單成員GUID
,使用簡單成員GUID
在我的Couriers數據庫中獲取ID,然後使用該ID作爲在下面的Find()
調用中缺少參數以返回要在視圖中編輯的模型/記錄?
如何將/作爲.Find()調用的參數使用?我在正確的軌道上,還是使這更復雜?MVC4 Linq數據庫調用
ps - 創建Courier記錄時,我將Couriers數據庫中的成員資格GUID
保存在與Courier ID主鍵列不同的列中。謝謝。
public ActionResult EditCourier()
{
System.Web.Security.MembershipUser user = Membership.GetUser();
var providerUserKey = user.ProviderUserKey;
Guid userId = (Guid)providerUserKey;
String userIDstring = userId.ToString();
var model =
from c in db.Couriers
where c.CourierMembershipID == userIDstring
select c.ID;
Courier courier = db.Couriers.Find();
if (courier == null)
{
return HttpNotFound();
}
return View(courier);
}
謝謝。我簡化了我的問題。所以,請讓我這樣問。我試圖用linq查詢返回單個記錄返回到視圖,但我得到不能轉換ienumberable到Courier錯誤信息 –
我編輯了我的答案 –
非常感謝。使用.First在推進這個問題方面有很大的幫助。我也會嘗試FirstOrDefault。 –