PDA

View Full Version : دسترسی به هر یک از فیلدهای حاصل از دستور select با EF



csharpprogramer88
شنبه 05 مرداد 1392, 17:39 عصر
سلام
من چظوری میتونم کوئری select که نوشتم به هر یک از ستون های موجود دسترسی داشته باشم؟

فرض در دیتابیس جدولی با 5 فیلد داشته باشیم حال میخواهیم به هریک از این فیلدها دسترسی داشته باشم و مقدار برگشتی از دستور select را در یک تکست باکس بریزم

mehran788
یک شنبه 06 مرداد 1392, 15:28 عصر
شرمنده من فکر کنم درست متوجه نشدم.
می خواین که به داده ههای جدولتون دسترسی داشته باشین؟

csharpprogramer88
یک شنبه 06 مرداد 1392, 15:40 عصر
اگر یه کوئری سلکت به دیتابیس بدم و این جدول 5 تا ستون داشته باشه چجوری میتونم به هر ستون دسترسی داشته باشم

مثلا جدولم فیلدهای name,lname,telfon,address,email داره

من هم یه سلکت به جدولم میزنم حالا میخوام مقدار برگشتی name د ر تکست باکسم بریزم

mehran788
یک شنبه 06 مرداد 1392, 15:45 عصر
اینطوری:
con.Open();
SqlCommand com = new SqlCommand("select count(code) from tbldate", con);
dr = com.ExecuteReader();
while (dr.Read())
{
string code = dr["code"].ToString();
string date = dr["date"].ToString();
string timein = dr["timein"].ToString();
string timeout = dr["timeout"].ToString();
string reason = dr["reason"].ToString();
text.WriteLine(code + "!" + date + "!" + timein + "!" + timeout + "!" + reason + "!");
prgbackup.Value = prgbackup.Value + 1;
}
con.Close();

csharpprogramer88
یک شنبه 06 مرداد 1392, 17:13 عصر
اقا من با entity frame work میخوامم

csharpprogramer88
یک شنبه 06 مرداد 1392, 18:24 عصر
اینطوری:
con.Open();
SqlCommand com = new SqlCommand("select count(code) from tbldate", con);
dr = com.ExecuteReader();
while (dr.Read())
{
string code = dr["code"].ToString();
string date = dr["date"].ToString();
string timein = dr["timein"].ToString();
string timeout = dr["timeout"].ToString();
string reason = dr["reason"].ToString();
text.WriteLine(code + "!" + date + "!" + timein + "!" + timeout + "!" + reason + "!");
prgbackup.Value = prgbackup.Value + 1;
}
con.Close();

آقا همین حالتی که نوشتی درسته ولی من با entity framework میخوام

esafb52
یک شنبه 06 مرداد 1392, 21:13 عصر
یه چیزی مثل این بنویسی فکر کنم کارت انجام بشه!

string getfullname(string codenational)
{
var Db = new fuleEntities();
string name = (from n in Db.Table1
where n.codemeli == codenational
select n.fullname).First();

return name;
}

csharpprogramer88
یک شنبه 06 مرداد 1392, 22:06 عصر
یه چیزی مثل این بنویسی فکر کنم کارت انجام بشه!

string getfullname(string codenational)
{
var Db = new fuleEntities();
string name = (from n in Db.Table1
where n.codemeli == codenational
select n.fullname).First();

return name;
}

این کد یعنی چی؟

من کدی مثل
string code = dr["code"].ToString(); میخوام

esafb52
یک شنبه 06 مرداد 1392, 22:26 عصر
اگه بگی دقیقا چکار میخوای بکنی شاید بتونم کمکت بکنم

csharpprogramer88
یک شنبه 06 مرداد 1392, 22:40 عصر
فک کنم سوالم واضح باشه

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

esafb52
دوشنبه 07 مرداد 1392, 00:28 صبح
خب دوست عزیز کدای من واضحن خب شما میخوای مقدار یک فیلد از دیتابیست رو بریزی تو یه تکس باکس خب یه شرط بنویس که اگه ایدی این بود فلان سطر فلان روکورد رو برگردون مثلا این آخرین سطر دیتابیس اسم کامل رو برمیگردونه
var esa = new fuleEntities();
int intIdt = esa.Table1.Max(u => u.id);
var ff = from n in esa.Table1
where n.id == intIdt
select n.fullname;
MessageBox.Show(ff.First().ToString());

uniqueboy_ara
دوشنبه 07 مرداد 1392, 02:13 صبح
بر فرض اسم جدول شما Test باشه:

public static Test Select(int MyId){
using(Xcontext DbContext = new Xcontext()){
return DbContext.Test.where(M=>M.id==MyId).toList();
}
}
------------------------------
Test T = Select(n);

txtName.text = T.Name;
txtFamily=T.Family;
.
.
.

csharpprogramer88
دوشنبه 07 مرداد 1392, 11:21 صبح
دوستان من دقیقا کد پست 4 را میخوام ولی بحالت EF


بفرض این کوئری را دارم

var search = database.tbl_kala.Where(i => i.namekala.Contains(textBox1.Text));


این یه دستور سلکت هست حالا چطوری میتونم به ستون های برگشتی دسترسی داشته باشم؟

gilas1368
سه شنبه 08 مرداد 1392, 12:23 عصر
شما selectی رو ک میزنید آخرش ی .ToList اضافه کنید
اونطرف هم با Foreach اطلاعات هر فیلد رو بخونید
من خودم با این روش کار میکنم