簡體   English   中英

如何在EF中添加var項目?

[英]How can i add var item in EF?

我有一個數組,其長度未指定。 也許100,110,...

對於每個值我都有:

  int a1 = array[0];
    var r1 = from row in db.products
    where row.id == a1
    select row;
    int a2 = array[1];
    var r2 = from row in db.products
    where row.id == a2
    select row;
...

如何獲得(r1 + r2 + r3 + ...(=和))的總和?

總結之后,我想序列化:

string s1 = js.Serialize(sum);

您可以在代碼中執行此操作:

表:

--use your db
USE [Breaz]
GO
/****** Object:  Table [dbo].[theProducts]    Script Date: 5/8/2017 3:49:33 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[theProducts](
    [theId] [int] IDENTITY(1,1) NOT NULL,
    [id] [int] NULL,
 CONSTRAINT [PK_theProducts] PRIMARY KEY CLUSTERED 
(
    [theId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

GO
SET IDENTITY_INSERT [dbo].[theProducts] ON 

GO
INSERT [dbo].[theProducts] ([theId], [id]) VALUES (1, 5)
GO
INSERT [dbo].[theProducts] ([theId], [id]) VALUES (2, 6)
GO
INSERT [dbo].[theProducts] ([theId], [id]) VALUES (3, 7)
GO
SET IDENTITY_INSERT [dbo].[theProducts] OFF
GO

程序:

//use your database dbcontext
       using (BreazEntities21 db = new BreazEntities21())
        {
            int[] a1 = { 5, 6 };
            var r1 = (from row in db.theProducts
                     where a1.Contains((int)row.id)
                     select row).ToList();
            int[] a2 = { 7 };
            var r2 = (from row in db.theProducts
                     where a2.Contains((int)row.id)
                     select row).ToList();
            var mergedList = r1.Union(r2).ToList();
            var summation = mergedList.Sum(r => r.id);
            var s1 = new JavaScriptSerializer().Serialize(summation);
        }

暫無
暫無

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

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