26. oktober 2009 - 16:16Der er
42 kommentarer og 1 løsning
Er dette den smarteste måde mht,. connection
Har lavet en update funktion, det er min første db conn vha. .net c#, er det den smarteste måde jeg har lavet det på eller er der en anden måde jeg bør benytte?
string strConn = ConfigurationManager.ConnectionStrings["Frontpage"].ToString(); SqlConnection dbconn = new SqlConnection(strConn); SqlCommand cmd = new SqlCommand(); cmd.CommandText = "update member set navn = 'newname' where id = 11"; cmd.Connection = dbconn; dbconn.Open(); cmd.ExecuteNonQuery(); dbconn.Close();
Jeg syntes det er ret meget at skrive hver gang man skal lave en db connection, findes der ikke noget smart, hvor man pakker det ind i funktioner.
I classic asp includerede jeg bare connection string på alle sider og skrev:
call opendb() call opentbl("select * from users", users) do while not users.eof response.write users("navn") users.movenext loop call closetbl(users) call closedb()
using (SqlConnection dbconn = new SqlConnection(ConfigurationManager.ConnectionStrings["Frontpage"].ToString())) { using (SqlCommand cmd = new SqlCommand("update members set Navn = 'newname' where id = 11", dbconn)) { dbconn.Open(); cmd.ExecuteNonQuery(); } }
Det er i hvert fald måden jeg ville gøre det på - men det skal også nævnes, at der er kommet nogle værktøjer (fx Entity Framework), der mere eller mindre kan gøre alt database-arbejdet for os (alt afhængig af nogle forhold selvfølgelig) så måske var dette også værd at kigge på.
Smider i begge et svar, så deler jeg points mellem jer.
Har lige lavet et indsæt script. er det fint nok lavet?
using (SqlConnection dbconn = new SqlConnection(ConfigurationManager.ConnectionStrings["Frontpage"].ToString())) { using (SqlCommand cmd = new SqlCommand("select * from members", dbconn)) { dbconn.Open(); SqlDataReader rs = cmd.ExecuteReader(CommandBehavior.CloseConnection); while (rs.Read()) { Response.Write(rs["ID"]); }
ja. men vel egentlig også til at lave forbindelsen. Ved at bruge Linq to SQL Klassen som ligger under Data når du har valgt Add new Item så får du en del foræret. Linq queries er dog en smule anderledes men hvis du kigger på nettet er der masser af eksempler.
LINQ to SQL var en forløber til EF og var mig bekendt slet ikke tiltænkt som et produkt der skulle releases - men pga pres fra udviklerne og den lange tidshorisont til EF valgte man alligevel at lægge det ud. Derfor skal man se produktet som erstattet af EF.
hehe drenge, jeg tror bare jeg bruger normal SQL ADO, det virker ikke så indviklet. Der er jo en milliard forskellige måder at connecte til databaser på og udskrive resultatet. Rimelig irriterende at der ikek bare kan være én god måde så man ikke hele tiden støder på en ny metode.
Kender i en god bog eller en gennemgang fra a-z hvordan man laver web med smart programmering mht. gridviews osv? Mange af de kontrollere i vs er som jeg ser det, beregnet til intranet og interne systemer med alt der der javascript kode osv. Men sådan laver man jo ikke en live side.
Det der er vigtigt at holde for øje hvis man skifter fra ASP til ASP.NET er, at de stort set eneste 3 ting der går igen er bogstaverne A, S og P - alt resten må ikke sammenlignes. En af de gode ting, men også en af de ting der gør indlæringskurven til ASP.NET stejlere end til ASP, er de mangle forskellige muligheder hvor hver har deres fordele og ulemper.
Jeg har læst version 2.0 bogen af den du har bestilt og den fokuserer rigtig godt på nogle af kontrollerne samt arkitektur i applikationen og ikke mindst hvorfor man vælger som man gør. Men man må selvfølgelig ikke tro at det altid er måden at gøre det på - det kræver godt med test og googling af andres erfaringer om fx kontroller for at lære at vælge det måske rigtige. De vigtige ting at fokusere på fra starten vil jeg umiddelbart mene må være et rigtige skifte til OOP samt lag-opdeling af ens arkitektur - brug af kontroller vil mere eller mindre komme af sig selv.
Med hensyn til den genererede HTML og JS, så skal du jo huske på at der er forskel på browsere og mennesker.
Hvis HTML og JS er validt, så er browserne glade - de går ikke op i pæn/grim kode.
Pæn kode er afgørende når mennesker skal læse koden. Men hvis HTML og JS genereres udfra kontroller, så har du ikke brug for at læse HTML og JS - og kan derfor være kold overfor om den er helt gal med navne og indrykning etc..
Der findes kontroller så du kan få pæn kode i de fleste tilfælde - men den pæne kode er så på bekostning af den funktionalitet de avancerede kontroller giver (men det er selvfølgelig langt fra altid nødveendigt med den funktionalitet).
Vil du tilbage til noget der minder mere om klassisk ASP så hedder det ASP.NET MVC.
MVC er lige så smart som det er usmart - det kommer an på hvad man har behov for i sin programmering, fx har du ikke viewstate som i ASP.NET men til gengæld får du fuld kontrol over din html ligesom opsplitningen mellem kode og markup er reel.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.