PDA

View Full Version : میخوام با استفاده از روش linq توی گرید ویوم جستجو کنم از چه روشی استفاده کنم؟



samadblaj
پنج شنبه 09 شهریور 1391, 16:15 عصر
سلام دوستان ببخشید میخوام با استفاده از روش Linq Entity توی گرید ویوم جستجو کنم از چه روشی استفاده کنم؟

alitavakoli
پنج شنبه 09 شهریور 1391, 17:07 عصر
میتونید از این کد استفاده کنید:

int selectedrow = 0;
foreach (DataGridViewRow row in dataGridView1.Rows)
{
foreach (DataGridViewCell cell in row.Cells)
{
try
{
if (cell.Value.ToString() == txtsearch.Text)
{
dataGridView1.Rows[selectedrow].Selected = true;
break;
}
}
catch
{
//Do Nothing
}
}
selectedrow++;
}

samadblaj
پنج شنبه 09 شهریور 1391, 20:48 عصر
دوست عزیز alitavakoli ممنونم از لطفت کد خیلی خوبی بود فقط میشه بگید برای اینکه گرید آپ دیت بشه باید چیکار کرد؟

alitavakoli
پنج شنبه 09 شهریور 1391, 21:59 عصر
گرید رو دوباره بایند کنید به کوریتون:
سوالی داشتید انجا مطرح (http://naras.ir)کنید در خدمتم

samadblaj
پنج شنبه 09 شهریور 1391, 23:38 عصر
ببخشید من این کد رو برای ASP میخواستم نه سی شارپ.

Kia_MLS
جمعه 10 شهریور 1391, 01:15 صبح
میتونید از این کد استفاده کنید:

int selectedrow = 0;
foreach (DataGridViewRow row in dataGridView1.Rows)
{
foreach (DataGridViewCell cell in row.Cells)
{
try
{
if (cell.Value.ToString() == txtsearch.Text)
{
dataGridView1.Rows[selectedrow].Selected = true;
break;
}
}
catch
{
//Do Nothing
}
}
selectedrow++;
}


این کجاش Linq بود؟ :متعجب:

Kia_MLS
جمعه 10 شهریور 1391, 01:23 صبح
سلام دوستان ببخشید میخوام با استفاده از روش Linq Entity توی گرید ویوم جستجو کنم از چه روشی استفاده کنم؟


var q = from a in GridView1.Rows.Cast<GridViewRow>()
from b in a.Cells.Cast<TableCell>()
where b.Text == "somthing"
select a;

samadblaj
جمعه 10 شهریور 1391, 01:55 صبح
var q = from a in GridView1.Rows.Cast<GridViewRow>()
from b in a.Cells.Cast<TableCell>()
where b.Text == "somthing"
select a;


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

کد من:


var q = (from a in GridView1.Rows.Cast<GridViewRow>()
from b in a.Cells.Cast<TableCell>()
where b.Text == "رز"
select a).SingleOrDefault();
Label7.Text = q;

این خطا رو میده.
Error 1 Cannot implicitly convert type 'System.Web.UI.WebControls.GridViewRow' to 'string'

Kia_MLS
جمعه 10 شهریور 1391, 02:08 صبح
نتیجه اون خط کدی که نوشتید و در متغیر q قرار دادین یک سطر از سطرهای گرید است که نوع اون GridViewRow است.
جهت نمایش نتیجه باید به مقدار Text یکی از ستونهای او خط اشاره کنید. مثلا کدی شبیه به کد زیر بنویسید:


Label7.Text = q.Cells[3].Text


یا به شل زیر:

Label7.Text = q.Cells.Cast<TableCell>().Where(a => a.Text == "رز").FirstOrDefault().Text;

samadblaj
جمعه 10 شهریور 1391, 08:50 صبح
من که نتونستم ازش استفاده کنم ولی خیلی خیلی ممنونم.

samadblaj
جمعه 10 شهریور 1391, 23:40 عصر
میشه کد سرچ را یکجا بنویسید من گیج شدم باید کدوم رو به کدوم بنویسم؟

این کد واسه چی خطا میده؟ میخوام عدادی که برابر با text1 هستند رو توی فیلد ID_Karbar پیدا کنم و بایند بشه اما از قسمت مشخص شده خطا میده؟




Database1Entities2 dbs = new Database1Entities2();

var filter = from z in dbs.kharid
where z.id_karbar == Convert.ToString(TextBox1.Text)

select z;

GridView2.DataSource = filter; GridView2.DataBind();

Kia_MLS
شنبه 11 شهریور 1391, 11:19 صبح
شما ميخواين عمليات جستجو از ديتابيس انجام بشه يا از گريدويو؟ :متفکر:
اون كدي كه من نوشتم جستجو رو از اطلاعات بايند شده در گريدويو انجام ميده

samadblaj
دوشنبه 13 شهریور 1391, 02:07 صبح
شما ميخواين عمليات جستجو از ديتابيس انجام بشه يا از گريدويو؟
اون كدي كه من نوشتم جستجو رو از اطلاعات بايند شده در گريدويو انجام ميده

سرچ بر روی گرید ویو.
کدتون خطا میده میشه کد ها رو یکجا بذارید؟
ممنونم