PDA

View Full Version : سوال: تبدیل کد از ado به linq



Iran58
پنج شنبه 04 شهریور 1395, 09:38 صبح
سلام
کد زیر را چونه می توانم به linq تبدیل کنیم

private void BindGrid()
{
string constring = @"Data Source=.;Initial Catalog=test;Persist Security Info=True;User ID=sa;Password=123";
using (var con = new SqlConnection(constring))
{
using (var cmd = new SqlCommand("aaaaa", con))
{
cmd.CommandType = CommandType.StoredProcedure;
using (var sda = new SqlDataAdapter(cmd))
{
using (var dt = new DataTable())
{
sda.Fill(dt);
radGridView1.DataSource = dt;
}
}
}
}
}

باتشکر

ژیار رحیمی
پنج شنبه 04 شهریور 1395, 12:43 عصر
سلام
ابتدا از پنجره Server Explorer پروسیجر رو با Drag کردن به بخش Designer Linq To SQL اضافه کن(پروسیجر به صورت Table در Designer نمایش داده نمیشود بصورت Method نمایش داده میشود)

using(var context=new DataContextTest)
{
radGridView1.DataSource=context.aaaaa().ToList();
}

اگر procedure شما دارای پارامتر ورودی بود مقادیر اسالی بصورت زیر فراخوانی میشود

context.aaaaa(12)

Iran58
پنج شنبه 04 شهریور 1395, 13:10 عصر
سلام
ابتدا از پنجره Server Explorer پروسیجر رو با Drag کردن به بخش Designer Linq To SQL اضافه کن(پروسیجر به صورت Table در Designer نمایش داده نمیشود بصورت Method نمایش داده میشود)

using(var context=new DataContextTest)
{
radGridView1.DataSource=context.aaaaa().ToList();
}

اگر procedure شما دارای پارامتر ورودی بود مقادیر اسالی بصورت زیر فراخوانی میشود

context.aaaaa(12)

سلام
من کد زیر را نوشته ام

DataClasses1DataContext dc = new DataClasses1DataContext();
var staff = dc.aaaa().ToList();
radGridView1.DataSource = staff;

اما جواب مورد نظر را نمایش نمی دهد چون من در sp از داینامیک کوئری استفاده کردم و جواب در سمت بانک 6ستون است اما در اینجا فقط یک ستون تاریخ را نمایش می دهد

ALTER proc [dbo].[aaaaa]
as
begin
declare @colname nvarchar(max) =
N'
select
distinct(s1.DatePr) as ''تاریخ'',s1.Dayname,s1.StatusDate,
(
select Namefamily from [dbo].[V_test] s2
where s2.DatePr=s1.DatePr and s2.testID=7
)as ['+(select Name from test where testID=7) + '],
(
select Namefamily from [dbo].[V_test] s2
where s2.DatePr=s1.DatePr and s2.testID=26
)as ['+(select Name from test where testID=26) + '],
(
select Namefamily from [dbo].[V_test] s2
where s2.DatePr=s1.DatePr and s2.testID=27
)as ['+(select Name from test where testID=27) + ']




from [dbo].[V_test] s1
';
exec sp_executesql @colname
end