webForumDet fria alternativet

Återanvända objekt?

.NET

2 svar · 221 visningar · startad av GrodanBoll

Medlem sedan sep. 2001788 inlägg
Frågan#1

Tjo!

Ibland vill man ju ställa mer än en SQL-fråga direkt efter varandra. Vilka objekt kan man då återanvända?

T.ex.

	SqlConnection myConn;
	SqlCommand myComm;
	SqlDataReader myDR;

	myConn = new SqlConnection("Integrated Security=SSPI;Persist Security Info=True;Initial Catalog=tmp;Data Source=ANTEVANTE\\MINMSDE;");
	myComm = new SqlCommand("SELECT membId, membFirstname, membLastname FROM tblMembers", myConn);
	myConn.Open();

	myDR = myComm.ExecuteReader();
	rptEtt.DataSource = myDR;
	rptEtt.DataBind();

	myDR.Close();
	myConn.Close();

Sen vill jag återanvända myConn, myComm och myDR utan att behöva deklarera dem på nytt. Hur gör jag då?
Ska jag stänga myConn eller låta den vara öppen?
Jag antar att jag stänger myDR men måste jag typ nollställa den innan jag kan återanvända den?
Ungeför likadant med myConn?

Eller tänker jag helt fel. E det inte effektivt att återanvända objekten?

/Grodan

Medlem sedan juni 20011 732 inlägg
#2

Är det inte bättre att då använda SP och/eller arbeta med views?

Medlem sedan sep. 2001788 inlägg
#3

Alldeles säkert. Men jag vill först lära mig grunderna rätt.
Ibland (läs:oftast) så vet man ju inte riktigt om det är den bästa vägen man tar. Visst det funkar men e det effektivast? Typ. :)

255 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)