PDA

View Full Version : nextresult()



marmar
شنبه 26 شهریور 1384, 14:29 عصر
سلام

یه sample ساده در مورد nextresult چرخشی مربوط به datareader میخوام


لطفا راهنماییم کنید

با تشکر :لبخندساده

Babak-Aghili
شنبه 26 شهریور 1384, 14:57 عصر
مال موقعی است که یک Batch SQL را اجرا میکنید. که وقتی یکی را اجرا کرد بره سراغ بعدی ...
بجای while توصیه میشه که از Repeat Until استفاده بشه .




do
{
while(dr.Read())
{
Console.WriteLine(dr.GetString(1));
}

} while(dr.NextResult());

marmar
شنبه 26 شهریور 1384, 15:21 عصر
سلام

میشه بیشتر توضیح بدید ؟

من این کد رو نوشتم اما nextresult() نمیشه

میشه کمک کنید

کد من:

selCmd1.Connection=mysqlconn;
mysqlconn.Open();
selCmd1.CommandText=@"
SELECT * FROM [dutyaction]
SELECT * FROM [action]
";

mydatareader2=selCmd1.ExecuteReader();
for (int i=0;mydatareader2.Read();i++)
{

Session["du"]=mydatareader2.GetDecimal(1);
Session["ac"]=mydatareader2.GetDecimal(2);
Response.Write (mydatareader2.GetDecimal(0));
mydatareader2.NextResult();

for (int y=0;mydatareader2.Read();y++)
{


if (System.Convert.ToDecimal(mydatareader2.GetDecimal (0))==System.Convert.ToDecimal( Session["ac"]) )
{
ing=System.Convert.ToString(mydatareader2.GetStrin g(1));
l=System.Convert.ToDecimal(mydatareader2.GetDecima l(2));

}
if(l==0)
{

TreeView2.AddNode(System.Convert.ToString(Session["a"]),ing,"","",false,"",TreeView2.NodeStyle);
}
else
{

TreeView2.FindNode(System.Convert.ToString(Session["du"])).AddNode(System.Convert.ToString(Session["ac"]),ing,"","",false,"",TreeView2.NodeStyle);
}


}
mydatareader2.NextResult();
Response.Write("("+mydatareader2.GetSqlDecimal(2)+")");

Babak-Aghili
شنبه 26 شهریور 1384, 16:13 عصر
یک چیزی : توی selCmd1 تون .... برای مجزا کردن دو دستور SQL که نوشته اید ... بایستی از سمی کالن ; استفاده شود که نشده ......

بقیه ی کد را هم انشاالله بقیه دوستان خواهند خواند !!!