簡體   English   中英

發布項目時在ASP.NET C#中獲取userID

[英]Getting userID in ASP.NET C# when posting item

我正在為我的當地社區建立一個小型的craigslist / ebay類型的市場。

大多數網站都是簡單的CRUD操作。 我啟用了個人用戶帳戶,當有人將項目發布到市場時,我想將他們當前的用戶ID綁定到帖子。 我已設置字段但如何自動附加登錄用戶的ID。

這是我的產品類

public class Product
{
    public string Title { get; set; }
    public decimal Price { get; set; }
    public string Photo { get; set; }
    public string Description { get; set; }
    public bool Availability { get; set; }
    public string Category { get; set; }

    public string Id { get; set; }

    public virtual ApplicationUser ApplicationUser { get; set; }
}

我在產品數據庫表中有一個字段,它將保存ApplicationUser_Id字符串值,但我不知道如何設置它。

這是我的創建產品控制器。 我會在這里放入那個userID邏輯嗎?

[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "Id,Title,Price,Description,Availability,Category,Photo")] Product product)
{
    if (ModelState.IsValid)
    {
        db.Products.Add(product);
        db.SaveChanges();
        return RedirectToAction("Index");
    }

    return View(product);
}

是的,您需要在保存之前將用戶添加到產品中。 就像是:

if (ModelState.IsValid)
{
    db.Products.Add(product);        
    db.Products.ApplicationUser = currentUser; //depending how you have your user defined       
    db.SaveChanges();
    return RedirectToAction("Index");
}

我有一段時間沒有使用Entity,所以我認為這應該是正確的

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM