PDA

View Full Version : چگونه دو رکورد در یک آیتم dropdownlist نمایش داده شود



bitcob589
جمعه 20 دی 1392, 15:00 عصر
با سلام
دو دیتابیس وجود دارد که در یکی ازدیتابیسها نام شهرها و در دیگری نام شهرستانها وجود دارد چگونه می توان با توجه به نام شهر و شهرستان درdropdownlist نمایش داد و نام شهر و شهرستان در یک آیتم dropdownlist نمایش داد
شبیه عکس زیر
115137
چگونه چنین کاری را انجام داد

mamad174
جمعه 20 دی 1392, 18:37 عصر
با سلام خدمت دوست عزیز برای این کار کافیه شما به وسیله ی کد به دیتا بیس وصل شده و با یک حلقه اطلاعات فیلد مورد نظر رو داخل dropdown اد کنید به قطعه کد زیر دقت کنید من این رو امتحان کردم درست کار میکنه من که داخل وبهای که مینویسم از این روش استفاده میکنم





DataTable dt = newDataTable();
string strconstring;
strconstring = ConfigurationSettings.AppSettings["constring"];
SqlConnection con = newSqlConnection(strconstring);
SqlDataAdapter da = newSqlDataAdapter();
da.SelectCommand = newSqlCommand();
da.SelectCommand.Connection = con;
da.SelectCommand.CommandText = "select * from table1,table2";

con.Open();
da.Fill(dt);
con.Close();
DropDownList1.Items.Clear();
for (int i = 0; i < dt.Rows.Count; i++)
{
DropDownList1.Items.Add(dt.Rows[i]["field1"] + "علامت مورد نظر" + dt.Rows[i]["table2"]);


}


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

bitcob589
جمعه 20 دی 1392, 18:45 عصر
چگونه نام استانها اول نوشته شود( مثل عکس نام استان اول که دارای پس زمینه سبز هستند) و به ترتیب شهرستانهای آن استان در زیر آن نمایش دهیم

meisam3322
جمعه 20 دی 1392, 19:09 عصر
شما برای اینکار نیاز به دو تا جدول دارید. یکی استان . دیگری شهرستان . خیلی راحتتر میشه اینطوری که

bitcob589
جمعه 20 دی 1392, 19:13 عصر
شما برای اینکار نیاز به دو تا جدول دارید. یکی استان . دیگری شهرستان . خیلی راحتتر میشه اینطوری که

نحوه پیاده سازی را توضیح دهید

lidaline
جمعه 20 دی 1392, 19:26 عصر
شما حتی میتونید داخل کوئری تان این کار رو بکنید.بطوریکه نام استان و نام شهر رو با هم کانتکت کنید و به عنوان خروجی بدین بیرون.اگر دیزاین جدول هاتون رو بدین کوئریشو واستون مینویسم

bitcob589
جمعه 20 دی 1392, 19:33 عصر
شما حتی میتونید داخل کوئری تان این کار رو بکنید.بطوریکه نام استان و نام شهر رو با هم کانتکت کنید و به عنوان خروجی بدین بیرون.اگر دیزاین جدول هاتون رو بدین کوئریشو واستون مینویسم
اگر جدول به نظر شما اشتباه است تصحیح کنید
115164

black_binary
جمعه 20 دی 1392, 20:05 عصر
سلام این کوئری همون خروجی مد نظرت رو میده ولی حتما روش بهتری هم وجود داره
یک جدول temp ساختیم و بقیه ماجرا....



create table #tmp
(ostName nvarchar(250),
citName nvarchar(250),
ostanID int)

insert into #tmp (ostName,citName,ostanID)
select ostan.name as ostName,'' as cityName,ostan.id
From ostan


insert into #tmp (ostName,citName,ostanID)
select ostan.name,shahrestan.name,ostan.id
from ostan , shahrestan
where shahrestan.ostanID=ostan.id


Select ostName+' << '+citName from #tmp
order by ostanID,citName

drop table #tmp

mamad174
جمعه 20 دی 1392, 22:33 عصر
برای روش بالا بهترین کار اینه که یک جدول استانها و یک جدول شهر ها رو داشته باشیم که جلوی هر شهر داخل فیلد کناری نام استان مورد نظر قرار داشته باشه بعد با ویزارد خود dropdown میتونیم کاری کنیم وقتی نام هر استان انتخاب شد خودکار شهرهای اون داخل drop شهرها لیست بشه اصلا هم نیاز به کد نویسی نداره من همیشه اینکار رو میکنم

lidaline
یک شنبه 29 دی 1392, 17:22 عصر
اگر جدول به نظر شما اشتباه است تصحیح کنید
115164

فکرکنم جدول استان رو به شهر نباید اینطوری join بزنید.باید ostan.id=shhrostan.ostan_id v باشه select ostan.name||' '||shhrostan.name from ostan,shhrostan where ostan.id=shhrostan.ostan_id