簡體   English   中英

幫助LINQ到SQL插入

[英]help with linq to sql insert

我正在使用三個表,但只插入兩個(一個稱為圖像,另一個稱為中間表)。 他們都有關系。

表:

ProductGroups--
ID
名稱

ProductGroup_Images--
ProductGroupID
ImagesID

圖片-
圖像標識
路徑

可以更優雅地編寫以下代碼嗎?

using (StoreDataContext db = new StoreDataContext())
        {                  
            Image img = new Image
            {
                Path = "https://s3.amazonaws.com/mystore/images/public/" + FileUpload1.PostedFile.FileName,    
            };
            db.Images.InsertOnSubmit(img);
            db.SubmitChanges();

            var pg = db.ProductGroups.Where(a => a.Name == txtName.Value).Select(b => b.ID).Single();

            ProductGroups_Image xref = new ProductGroups_Image
            {
                ProductGroupsID = pg,
                ImagesID= img.ImagesID
            };
            db.ProductGroups_Images.InsertOnSubmit(xref);
            db.SubmitChanges();
        }

當您具有參照屬性時,為什么要擔心ID。

Image img = new Image();
img.Path = @"https://s3.amazonaws.com/mystore/images/public/"
  + FileUpload1.PostedFile.FileName;

ProductGroups_Image xref = new ProductGroups_Image();
xref.Image = img;

using (StoreDataContext db = new StoreDataContext())
{
  ProductGroup pg = db.ProductGroups.Where(a => a.Name == txtName.Value).Single();

  xref.ProductGroup = pg;

  db.SubmitChanges();
}

您可以嘗試以下內容......

 ProductGroup temp = db.ProductGroups.Where(a => a.Name == txtName.Value.Select(a).Single();
temp.Images.Add(img);
db.SubmitChanges;

暫無
暫無

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

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