ممنون از راهنمایی و وقتی که گذاشتین. جواب به سوالاتتون:
اسکریپت جدول TUser:
CREATE TABLE [dbo].[TUser](
[Code] [int] IDENTITY(1,1) NOT NULL,
[UserId] [int] NULL,
[Fname] [nvarchar](60) NULL,
[Lname] [nvarchar](120) NULL,
CONSTRAINT [PK_TUser] PRIMARY KEY CLUSTERED
(
[Code] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
و اسکریپت جدول TPardakht:
CREATE TABLE [dbo].[TPardakht](
[Code] [int] IDENTITY(1,1) NOT NULL,
[UserId] [int] NULL,
[Name] [nvarchar](120) NULL,
[Date] [nvarchar](15) NULL,
[Bed] [decimal](18, 0) NULL,
[Bes] [decimal](18, 0) NULL,
[Mande] [decimal](18, 0) NULL,
[Babat] [nvarchar](max) NULL,
[WaysOfPay] [nvarchar](70) NULL,
[Month] [nvarchar](2) NULL,
[Year] [nvarchar](4) NULL,
[DocNo] [decimal](18, 0) NULL,
[OtherH] [nvarchar](max) NULL,
[HCode] [int] NULL,
[HName] [nvarchar](100) NULL,
[Control] [nvarchar](1) NULL,
[YFname] [nvarchar](50) NULL,
[YLname] [nvarchar](70) NULL,
[YCode] [int] NULL,
CONSTRAINT [PK_TPardakht] PRIMARY KEY CLUSTERED
(
[Code] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
بنده از تکنولوژی ado.net استفاده می کنم.
اما عرض کردم برای تست از linq to sql هم استفاده کردم دیدم سرعتش مثل همینه.
از join هم استفاده کردم اما بزرگترین مساله اینه که نمی خوام اسم کابرانی را که در ماه مثلا 9 پرداخت داشته اند را نشون بده.
ضمنا به این دلیل از فیلد ماه جدا استفاده کردم چون ممکن است پرداخت مربوط به ماه 8 مثلا در تاریخ 1395/09/01 انجام شود ولی می خواهند جزو ماه 8 باشد. ماه 8 و 9 در اینجا مثال است بعد خودم چایگزین متغیر می کنم.
راه های مختلفی تست کردم اما چون موارد خواسته شده همه قرار است در یک گریدویو نمایش داده شود و هر کدام از فیلدها یک جور محاسبه می شود سرعت بسیار پایین می آید.
باز ممنون میشم یک راهنمایی بفرمایید همچنین در مورد string.join توضیح دهید.
با سپاس فراوان