<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4729155029744079654</id><updated>2011-12-28T10:19:54.891+02:00</updated><category term='while'/><category term='resize'/><category term='debug'/><category term='app_data'/><category term='redimensionare'/><category term='Visual Studio'/><category term='query string'/><category term='proprietati'/><category term='operatii'/><category term='disable buton'/><category term='conversii'/><category term='foreach'/><category term='__dopostback()'/><category term='variabile'/><category term='comentarii'/><category term='metode'/><category term='ASP .NET'/><category term='evenimente'/><category term='secvente speciale'/><category term='web developer'/><category term='functii'/><category term='sql server'/><category term='cookie'/><category term='switch'/><category term='site'/><category term='imagini'/><category term='array'/><category term='cs'/><category term='buton'/><category term='C#'/><category term='siruri de caractere'/><category term='for'/><category term='introducere'/><category term='upload fisiere'/><category term='app_code'/><category term='web server'/><category term='baza de date'/><category term='intellisense'/><category term='if'/><category term='aspx'/><category term='do...while'/><category term='tipuri de date'/><category term='web.config'/><title type='text'>ASP .NET, C#, Web Developer</title><subtitle type='html'>Creearea paginilor web folosind ASP .NET şi C#</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>27</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-6148266168704145583</id><published>2010-02-20T12:05:00.003+02:00</published><updated>2010-02-20T12:19:02.410+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='imagini'/><category scheme='http://www.blogger.com/atom/ns#' term='redimensionare'/><category scheme='http://www.blogger.com/atom/ns#' term='resize'/><title type='text'>Redimensionare imagini</title><content type='html'>Cu ajutorul ASP .NET putem redimensiona o imagine fără ca să se piardă din calitate. Iată mai jos un exemplu de redimensionare a unei imagini. Pentru ca exemplul să funcţioneze, avem nevoie să includem 2 namespace-uri aflate mai jos.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style='font-family:Courier New;font-size:12px;'&gt;&lt;br /&gt;using System.Drawing.Drawing2D;&lt;br /&gt;using System.Drawing.Imaging;&lt;br /&gt;&lt;br /&gt;[...]&lt;br /&gt;&lt;br /&gt; string file = path; // calea completă către fişier&lt;br /&gt;&lt;br /&gt;                System.Drawing.Image oImg = System.Drawing.Image.FromFile(file);&lt;br /&gt;&lt;br /&gt;                System.Drawing.Image oThumbNail = new Bitmap(100, 100, oImg.PixelFormat); /* aici putem trece în locul celor 2 valori de 100 dimensiunea la care dorim să redimensionăm poza (prima valoare este lungimea - width iar a doua înălţimea imaginii - height) */&lt;br /&gt;&lt;br /&gt;                Graphics oGraphic = Graphics.FromImage(oThumbNail);&lt;br /&gt;&lt;br /&gt;                oGraphic.CompositingQuality = CompositingQuality.HighQuality;&lt;br /&gt;&lt;br /&gt;                oGraphic.SmoothingMode = SmoothingMode.HighQuality;&lt;br /&gt;&lt;br /&gt;                oGraphic.InterpolationMode = InterpolationMode.HighQualityBicubic;&lt;br /&gt;&lt;br /&gt;                Rectangle oRectangle = new Rectangle(0, 0, 100, 100); /* dacă sus s-au modificat cele 2 valori de 100, atunci şi aici trecem acele valori */&lt;br /&gt;&lt;br /&gt;                oGraphic.DrawImage(oImg, oRectangle);&lt;br /&gt;&lt;br /&gt;                oThumbNail.Save(file, ImageFormat.Jpeg); /* se poate alege formatul imaginii folosind parametrul al doilea - ImageFormat */&lt;br /&gt;&lt;br /&gt;                oImg.Dispose();&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-6148266168704145583?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/6148266168704145583/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=6148266168704145583' title='2 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/6148266168704145583'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/6148266168704145583'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2010/02/redimensionare-imagini.html' title='Redimensionare imagini'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-4197237312379397946</id><published>2010-02-03T11:27:00.003+02:00</published><updated>2010-02-03T16:29:19.913+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web.config'/><category scheme='http://www.blogger.com/atom/ns#' term='sql server'/><category scheme='http://www.blogger.com/atom/ns#' term='baza de date'/><title type='text'>Lucrul cu bazele de date. Executarea unei instrucţiuni SQL</title><content type='html'>Multe din aplicaţiile ASP .NET realizate vor avea nevoie de acces la o bază de date. Mai jos voi prezenta o metodă pentru conectarea la baza de date din cod şi executarea unei comenzi SQL.&lt;br /&gt;&lt;br /&gt;Pentru instalarea serverului SQL precum şi a unui tool de management a bazei de date (pentru a putea crea tabelele şi baza de date vizual) accesaţi această adresă: &lt;a href="http://www.microsoft.com/express/Downloads/"&gt;http://www.microsoft.com/express/Downloads/&lt;/a&gt;. Aici puteţi alege SQL Server 2008 Express (Runtime with Advanced Services sau Runtime With Management Tools). &lt;br /&gt;&lt;br /&gt;La instalare puteţi alege metoda de conectare la serverul SQL (SQL authentication sau Windows autenthication). Numele serviciului SQL este denumit implicit SQLEXPRESS. Pentru a vedea cum se defineste conexiunea la baza de date, citiţi secţiunea "Conectarea la baza de date" de aici: &lt;a href="http://punctnet.blogspot.com/2009/11/webconfig.html"&gt;http://punctnet.blogspot.com/2009/11/webconfig.html&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Executarea unei comenzi SELECT.&lt;/span&gt;&lt;br /&gt;&lt;span style='font-family:Courier New;font-size:12px;'&gt;&lt;br /&gt; private string connectionstring = WebConfigurationManager.ConnectionStrings["nume_conexiune"].ConnectionString; /* conexiunea e definită în web.config, sau pur şi simplu se poate scrie aici string-ul de conectare */&lt;br /&gt;&lt;br /&gt; private void conectare()&lt;br /&gt;    {&lt;br /&gt;         &lt;br /&gt;        SqlConnection conn = new SqlConnection(connectionstring);  &lt;br /&gt;/* definim conexiunea sql*/&lt;br /&gt;&lt;br /&gt;        conn.Open(); // se deschide conexiunea&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;        string command = "SELECT * FROM nume_tabela";// definim comanda sql&lt;br /&gt;&lt;br /&gt;        SqlCommand comm = new SqlCommand(command, conn);&lt;br /&gt;&lt;br /&gt;        SqlDataReader reader;&lt;br /&gt;&lt;br /&gt;        &lt;br /&gt;        try&lt;br /&gt;        {&lt;br /&gt;            reader = comm.ExecuteReader();&lt;br /&gt;            while (reader.Read())&lt;br /&gt;               {&lt;br /&gt;               /*preluare date. Putem prelua primul câmp din rezultatul selectului astfel: &lt;span style="font-weight:bold;"&gt;reader[0].ToString()&lt;/span&gt; sau &lt;span style="font-weight:bold;"&gt;reader["nume_camp"].ToString()&lt;/span&gt; */              &lt;br /&gt;               }&lt;br /&gt;            reader.Close();&lt;br /&gt;            &lt;br /&gt;        }&lt;br /&gt;        catch&lt;br /&gt;        {&lt;br /&gt;//în caz că avem erori, le putem prelucra aici.&lt;br /&gt;        }&lt;br /&gt;        finally&lt;br /&gt;        {&lt;br /&gt;            conn.Close(); //orice s-ar întâmpla, conexiunea se închide.&lt;br /&gt;            &lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;În cazul unei instrucţiuni &lt;span style="font-weight:bold;"&gt;INSERT, UPDATE sau DELETE&lt;/span&gt; se procedează astfel:&lt;br /&gt;&lt;br /&gt;&lt;span style='font-family:Courier New;font-size:12px;'&gt;&lt;br /&gt; private string connectionstring = WebConfigurationManager.ConnectionStrings["nume_conexiune"].ConnectionString;&lt;br /&gt;&lt;br /&gt; private void executare_sql()&lt;br /&gt;    {&lt;br /&gt;         &lt;br /&gt;        SqlConnection conn = new SqlConnection(connectionstring);  &lt;br /&gt;&lt;br /&gt;        conn.Open(); //se poate folosi si aici try...catch&lt;br /&gt;&lt;br /&gt;        string command = "INSERT INTO ...";&lt;br /&gt;&lt;br /&gt;        SqlCommand comm = new SqlCommand(command, conn);&lt;br /&gt;&lt;br /&gt;        comm.ExecuteNonQuery();&lt;br /&gt;&lt;br /&gt;        conn.Close();&lt;br /&gt;    }&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-4197237312379397946?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/4197237312379397946/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=4197237312379397946' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/4197237312379397946'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/4197237312379397946'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2010/02/lucrul-cu-bazele-de-date-executarea.html' title='Lucrul cu bazele de date. Executarea unei instrucţiuni SQL'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-2013527283148673405</id><published>2009-11-19T14:18:00.005+02:00</published><updated>2010-02-03T16:31:46.754+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web.config'/><title type='text'>web.config</title><content type='html'>web.config este un fişier XML ce se află în directorul aplicaţiei ASP .NET şi care conţine diverse elemente de configurare a aplicaţiei. Structura fişierului începe cu tag-ul &lt;span style="font-weight:bold;"&gt;&amp;lt;configuration&amp;gt;&lt;/span&gt; iar în interiorul acestuia avem secţiunea &lt;span style="font-weight:bold;"&gt;&amp;lt;system.web&amp;gt;&lt;/span&gt; unde se află partea de configurare a aplicaţiei precum şi secţiunea &lt;span style="font-weight:bold;"&gt;&amp;lt;appSettings&amp;gt;&lt;/span&gt; unde putem să introducem elemente personalizate de configurare. &lt;br /&gt;&lt;br /&gt;Ca toate fişierele XML, şi web.config este case-sensitive (tagurile cu acelaşi nume şi litere mici sunt diferite faţă de cele cu litere mari şi acelaşi nume). web.config se află în directorul rădăcină, dar fiecare subdirector al aplicaţiei poate conţine un fişier web.config cu setări adiţionale ce se aplică acelor subdirectoare. De exemplu, putem crea un fişier pentru subdirectorul &lt;span style="font-style:italic;"&gt;administrare&lt;/span&gt; al aplicaţiei în care să nu permitem accesul persoanelor neautorizate.&lt;br /&gt;&lt;br /&gt;Printre cele mai uzuale setări ale fişierului web.config se numără următoarele:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-weight:bold;"&gt;Conectarea la baza de date.&lt;/span&gt; Să presupunem că avem 20 pagini într-o aplicaţie ASP. NET, fiecare din ele utilizând o conexiune la baza de date. Putem defini o conexiune la baza de date în fişierul web.config care să poată fi folosită în toate paginile. Astfel, dacă modificăm conexiunea, o facem doar într-un singur loc.&lt;br /&gt;&lt;br /&gt;Pentru a defini o conexiune la baza de date în fişierul web.config, folosim următorul cod introdus în secţiunea &amp;lt;configuration&amp;gt; dar înaintea secţiunii &amp;lt;system.web&amp;gt;:&lt;br /&gt;&lt;span style='font-family:Courier New;font-size:11px;'&gt;&lt;br /&gt;&amp;lt;connectionStrings&amp;gt;&lt;br /&gt;      &amp;lt;add name="&lt;span style="font-style:italic;"&gt;nume_conexiune&lt;/span&gt;" connectionString="Data Source=&lt;span style="font-style:italic;"&gt;nume_calculator/nume_server_sql&lt;/span&gt;;Initial Catalog=&lt;span style="font-style:italic;"&gt;nume_baza_de_date&lt;/span&gt;;Persist Security Info=True;User ID=&lt;span style="font-style:italic;"&gt;user&lt;/span&gt;;Password=&lt;span style="font-style:italic;"&gt;parola&lt;/span&gt;;"&lt;br /&gt;   providerName="System.Data.SqlClient" /&amp;gt;&lt;br /&gt;&amp;lt;/connectionStrings&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Codul de mai sus poate fi folosit în cazul când conexiunea la serverul SQL se realizează folosind autentificarea SQL Server. Dacă se foloseşte autentificarea Windows atunci connectionString se înlocuieşte cu:&lt;br /&gt;&lt;span style='font-family:Courier New;font-size:11px;'&gt;&lt;br /&gt;connectionString="Data Source=&lt;span style="font-style:italic;"&gt;nume_calculator/nume_server_sql&lt;/span&gt;;Initial Catalog=&lt;span style="font-style:italic;"&gt;nume_baza_date&lt;/span&gt;;Integrated Security=True"&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Pentru a folosi conexiunea în partea de server side a unei pagini folosim următorul cod:&lt;br /&gt;&lt;span style='font-family:Courier New;font-size:11px;'&gt;&lt;br /&gt;private string connectionstring = WebConfigurationManager.ConnectionStrings["&lt;span style="font-style:italic;"&gt;nume_conexiune&lt;/span&gt;"].ConnectionString;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-weight:bold;"&gt;Erori personalizate&lt;/span&gt;. La întâlnirea unei erori în aplicaţie putem seta ca ASP .NET să redirecţioneze utilizatorul spre o anumită pagină. Următorul cod se poate introduce în web.config în secţiunea system.web:&lt;br /&gt;&lt;span style='font-family:Courier New;font-size:11px;'&gt;&lt;br /&gt;&amp;lt;customErrors defaultRedirect="pagina.aspx"/&amp;gt; &lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Folosind codul de mai sus, la întâlnirea oricărei erori, ASP .NET va redirecţiona utilizatorul spre pagina.aspx. Putem personaliza şi mai mult paginile la care ajunge utilizatorul în caz de eroare folosind codurile erorilor. De exemplu, 404 este eroarea pentru pagină negăsită, iar 403 este eroarea pentru acces interzis. Putem scrie astfel:&lt;br /&gt;&lt;span style='font-family:Courier New;font-size:11px;'&gt;&lt;br /&gt;&amp;lt;customErrors defaultRedirect="pagina.aspx"&amp;gt;&lt;br /&gt;&amp;lt;error&amp;gt; statusCode="404" redirect="eroare404.aspx" /&amp;gt;&lt;br /&gt;&amp;lt;error&amp;gt; statusCode="403" redirect="eroare403.aspx" /&amp;gt;&lt;br /&gt;&amp;lt;customErrors&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;În acest caz, dacă se întâlneşte eroarea pagină negăsită, utilizatorul va fi redirecţionat spre eroare404.aspx, dacă accesul este interzis, utilizatorul va vedea pagina eroare403.aspx, iar în cazul oricărei alte erori se va afişa pagina pagina.aspx&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-weight:bold;"&gt;Mărimea fişierelor încărcate pe server.&lt;/span&gt; Implicit, când facem un upload, ASP .NET respinge fişierele mai mari de 4 MB. Pentru a modifica această limitare, putem introduce în fişierul web.config următoarea linie de cod în secţiunea &amp;lt;system.web&amp;gt;&lt;br /&gt;&lt;span style='font-family:Courier New;font-size:11px;'&gt;&lt;br /&gt;&amp;lt;httpRuntime maxRequestLength = "10240" /&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;În cazul de mai sus, dimensiunea maximă a fişierului acceptat de server este de 10 MB.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span style="font-weight:bold;"&gt;Interzicerea accesului în anumite directoare.&lt;/span&gt; Interzicerea accesului se poate face foarte simplu folosind tag-ul authorization în secţiunea system.web astfel:&lt;br /&gt;&lt;span style='font-family:Courier New;font-size:11px;'&gt;&lt;br /&gt;&amp;lt;authorization&amp;gt;&lt;br /&gt;&amp;lt;deny users = "?" /&amp;gt;&lt;br /&gt;&amp;lt;authorization&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-2013527283148673405?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/2013527283148673405/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=2013527283148673405' title='1 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/2013527283148673405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/2013527283148673405'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2009/11/webconfig.html' title='web.config'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-4610110354302793791</id><published>2009-01-29T11:21:00.007+02:00</published><updated>2009-01-29T13:32:08.651+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cookie'/><title type='text'>Cookies</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_w-3vHIqvcOI/SYGDQExxwpI/AAAAAAAAB40/CNpag-8PVyk/s1600-h/cookie-pagina-1.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 323px; height: 205px;" src="http://1.bp.blogspot.com/_w-3vHIqvcOI/SYGDQExxwpI/AAAAAAAAB40/CNpag-8PVyk/s400/cookie-pagina-1.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5296658948948083346" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_w-3vHIqvcOI/SYGDQRjLAJI/AAAAAAAAB48/Hngh6P5bkqM/s1600-h/cookie-pagina-2.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 391px; height: 170px;" src="http://4.bp.blogspot.com/_w-3vHIqvcOI/SYGDQRjLAJI/AAAAAAAAB48/Hngh6P5bkqM/s400/cookie-pagina-2.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5296658952376483986" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cu ajutorul unui &lt;span style="font-weight:bold;"&gt;cookie&lt;/span&gt; (nu biscuit sau prăjitură) putem reţine şi folosi anumite date în toate paginile aplicaţiei web. Cookie-urile sunt create pe calculatorul clientului şi nu sunt folosite pentru a stoca date de o dimensiune prea mare. Putem folosi un cookie pentru a stoca de exemplu numele utilizatorului autentificat sau email-ul acestuia.&lt;br /&gt;&lt;br /&gt;Un cookie se crează astfel:&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;br /&gt;HttpCookie cookie = new HttpCookie("date");&lt;br /&gt;&lt;br /&gt;cookie["nume"] = nume.Text;&lt;br /&gt;&lt;br /&gt;cookie["email"] = email.Text;&lt;br /&gt;&lt;br /&gt;Response.Cookies.Add(cookie);&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Acest cookie va fi valabil până când browserul rămâne deschis. Dacă vrem să prelungim valabilitatea unui cookie, scriem astfel:&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;cookie.Expires = DateTime.Now.AddYears(100); // acest cookie e valabil 100 ani&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Putem prelua datele din cookie astfel:&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;string c="";&lt;br /&gt;&lt;br /&gt;HttpCookie cookie = Request.Cookies["date"];&lt;br /&gt;&lt;br /&gt;        if (cookie != null) // verificam daca cookie-ul exista&lt;br /&gt;        {&lt;br /&gt;            c = "nume: " + (string)cookie["nume"] + " şi email:" + (string)cookie["email"];&lt;br /&gt;        }&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Singura modalitate de a şterge un cookie este de a-i seta o dată de expirare înainte de data curentă. Codul este:&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt; HttpCookie cookie = Request.Cookies["date"];&lt;br /&gt;&lt;br /&gt;        cookie.Expires = DateTime.Now.AddDays(-1);&lt;br /&gt;&lt;br /&gt;        Response.Cookies.Add(cookie);&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Descarcă exemplul&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;iframe scrolling="no" marginheight="0" marginwidth="0" frameborder="0" style="width:240px;height:66px;margin:3px;padding:0;border:1px solid #dde5e9;background-color:#ffffff;" src="http://cid-242fcc4872b73089.skydrive.live.com/embedrowdetail.aspx/Exemple/exemplu-cookie.zip"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-4610110354302793791?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/4610110354302793791/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=4610110354302793791' title='1 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/4610110354302793791'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/4610110354302793791'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2009/01/cookies.html' title='Cookies'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_w-3vHIqvcOI/SYGDQExxwpI/AAAAAAAAB40/CNpag-8PVyk/s72-c/cookie-pagina-1.PNG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-3703069244539893730</id><published>2009-01-28T16:18:00.006+02:00</published><updated>2009-01-28T16:51:55.207+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='query string'/><title type='text'>Redirectionare si trimiterea informatiilor intre pagini folosind query string</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_w-3vHIqvcOI/SYBtFol9UFI/AAAAAAAAB4k/XSjNSGCUeXo/s1600-h/prima-pagina-query-string.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 359px; height: 225px;" src="http://2.bp.blogspot.com/_w-3vHIqvcOI/SYBtFol9UFI/AAAAAAAAB4k/XSjNSGCUeXo/s400/prima-pagina-query-string.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5296353105351102546" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_w-3vHIqvcOI/SYBtJyuGg1I/AAAAAAAAB4s/tAw2EcN-AbA/s1600-h/pagina-2-query-string.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 183px;" src="http://4.bp.blogspot.com/_w-3vHIqvcOI/SYBtJyuGg1I/AAAAAAAAB4s/tAw2EcN-AbA/s400/pagina-2-query-string.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5296353176789091154" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Redirecţionarea către o altă pagină se face folosind instrucţiunea &lt;span style="font-weight:bold;"&gt;Response.Redirect()&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="exemplu"&gt;&lt;br /&gt; Response.Redirect("default2.aspx?luna="+&lt;br /&gt;DropDownList1.SelectedItem.Value);&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Browserul va fi redirecţionat către pagina default2.aspx. &lt;span style="font-weight:bold;"&gt;?luna=valoare&lt;/span&gt; reprezintă parametrul transmis paginii. Numele parametrului este &lt;span style="font-weight:bold;"&gt;luna&lt;/span&gt; deoarece se află după semnul "&lt;span style="font-weight:bold;"&gt;?&lt;/span&gt;" care denotă începerea parametrilor. Pentru mai mulţi parametri putem scrie &lt;span style="font-weight:bold;"&gt;?luna=valoare&amp;anul=valoare&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;În pagina a 2-a putem prelua valoarea parametrului trimis folosind &lt;span style="font-weight:bold;"&gt;Request.QueryString[]&lt;/span&gt; astfel:&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;Label1.Text="Luna aleasă este &amp;lt;strong&amp;gt;" + Request.QueryString["luna"].ToString()+"&amp;lt;/strong&amp;gt;";&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Avantaje&lt;/span&gt;: simplu şi rapid.&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Dezavantajele&lt;/span&gt;: utilizatorii avansaţi pot modifica valorile parametrilor care sunt vizibile şi nu se pot trimite valori mari.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Descarcă acest exemplu&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;iframe scrolling="no" marginheight="0" marginwidth="0" frameborder="0" style="width:240px;height:66px;margin:3px;padding:0;border:1px solid #dde5e9;background-color:#ffffff;" src="http://cid-242fcc4872b73089.skydrive.live.com/embedrowdetail.aspx/Exemple/exemplu-query-string.zip"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-3703069244539893730?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/3703069244539893730/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=3703069244539893730' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/3703069244539893730'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/3703069244539893730'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2009/01/redirectionare-si-trimiterea.html' title='Redirectionare si trimiterea informatiilor intre pagini folosind query string'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_w-3vHIqvcOI/SYBtFol9UFI/AAAAAAAAB4k/XSjNSGCUeXo/s72-c/prima-pagina-query-string.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-7167487377166247133</id><published>2009-01-28T13:32:00.007+02:00</published><updated>2009-01-28T15:18:47.828+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='disable buton'/><category scheme='http://www.blogger.com/atom/ns#' term='__dopostback()'/><title type='text'>Disable la un buton dupa click</title><content type='html'>M-am întâlnit cu următoarea situaţie: după completarea datelor unui form, datorită conexiunii la internet lente, utilizatorii grăbiţi au apăsat de mai multe ori butonul de adăugare a datelor din form astfel datele au fost duplicate.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Buton pe disable şi trimiterea datelor spre server.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Vom folosi javascript pentru această operaţie. Codul javascript este următorul:&lt;br /&gt;&lt;br /&gt;&lt;div class="exemplu"&gt;&lt;br /&gt;&amp;lt;script type="text/javascript" language="javascript"&amp;gt;&lt;br /&gt;        function disable_buton() {&lt;br /&gt;&lt;br /&gt;            document.getElementById("trimite_date").disabled = "disabled";&lt;br /&gt;            document.getElementById("trimite_date").value = "Aşteaptă...";&lt;br /&gt;            __doPostBack("trimite_date", "OnClick");&lt;br /&gt;&lt;br /&gt;        }&lt;br /&gt;    &amp;lt;/script&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Iar codul HMTL este&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;div style="width:300px;float:left;border-style:solid;border-color:Black;border-width:1px;padding:10px;"&amp;gt;&lt;br /&gt;    &lt;br /&gt;       Nume: &amp;lt;asp:TextBox ID="nume" runat="server"&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;    Vârstă: &amp;lt;asp:TextBox ID="varsta" runat="server" Width="30px"&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;    Ocupaţie: &amp;lt;asp:TextBox ID="ocupatie" runat="server"&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;    &lt;br /&gt;        &amp;lt;asp:Button ID="trimite_date" runat="server" Text="Apasă butonul" &lt;br /&gt;            onclick="trimite_date_Click" &lt;span style="font-weight:bold;"&gt;UseSubmitBehavior="False"&lt;/span&gt; &lt;span style="font-weight:bold;"&gt;OnClientClick="disable_buton();"&lt;/span&gt; /&amp;gt;&lt;br /&gt;    &lt;br /&gt;        &amp;lt;br /&amp;gt;&lt;br /&gt;        &amp;lt;br /&amp;gt;&lt;br /&gt;        &amp;lt;asp:Label ID="Label1" runat="server" ForeColor="#999999" Text="Rezultat..."&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;    &lt;br /&gt;    &amp;lt;/div&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_w-3vHIqvcOI/SYBQi4l5GbI/AAAAAAAAB4c/tBc7kzbkU94/s1600-h/buton-disable-si-trimitere-date.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 340px; height: 169px;" src="http://3.bp.blogspot.com/_w-3vHIqvcOI/SYBQi4l5GbI/AAAAAAAAB4c/tBc7kzbkU94/s400/buton-disable-si-trimitere-date.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5296321722024794546" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;În codul javascript, butonul cu id-ul "trimite date" este pus pe disable, este schimbat text-ul apoi este executată funcţia &lt;span style="font-weight:bold;"&gt;__dopostback()&lt;/span&gt; (cu două semne "_" in faţa numelui). Această funcţie este responsabilă cu trimiterea datelor spre server. Acceptă 2 parametri, primul este id-ul controlului care a iniţiat trimiterea datelor, iar al 2-lea reprezintă o informaţie suplimentară cum ar fi tipul evenimentului asociat controlului.&lt;br /&gt;&lt;br /&gt;În codul HTML butonul "trimite_date" are setat atributul &lt;span style="font-weight:bold;"&gt;UseSubmitBehavior="False"&lt;/span&gt; lucru important pentru funcţionarea bună a script-ului.&lt;br /&gt;&lt;br /&gt;În cazul unei erori de validare în &lt;span style="font-weight:bold;"&gt;directiva page&lt;/span&gt; se setează atributul &lt;span style="font-weight:bold;"&gt;EnableEventValidation="false" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" EnableEventValidation="false" %&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Descarcă acest exemplu&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;iframe scrolling="no" marginheight="0" marginwidth="0" frameborder="0" style="width:240px;height:66px;margin:3px;padding:0;border:1px solid #dde5e9;background-color:#ffffff;" src="http://cid-242fcc4872b73089.skydrive.live.com/embedrowdetail.aspx/Exemple/exemplu-buton-disable.zip"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-7167487377166247133?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/7167487377166247133/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=7167487377166247133' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/7167487377166247133'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/7167487377166247133'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2009/01/disable-la-un-buton-dupa-click.html' title='Disable la un buton dupa click'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_w-3vHIqvcOI/SYBQi4l5GbI/AAAAAAAAB4c/tBc7kzbkU94/s72-c/buton-disable-si-trimitere-date.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-3099842307809253804</id><published>2009-01-28T10:57:00.012+02:00</published><updated>2009-01-28T12:18:47.516+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='upload fisiere'/><title type='text'>Upload fisiere. Upload dinamic</title><content type='html'>ASP .NET include un control cu ajutorul căruia putem încărca fişiere pe server. Acesta este FileUpload. FileUpload este echivalentul HTML pentru &amp;lt;input type="file"&amp;gt; &lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_w-3vHIqvcOI/SYAgW7YMdpI/AAAAAAAAB38/OqwjQQ79iuk/s1600-h/fileupload.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 105px; height: 400px;" src="http://2.bp.blogspot.com/_w-3vHIqvcOI/SYAgW7YMdpI/AAAAAAAAB38/OqwjQQ79iuk/s400/fileupload.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5296268740056086162" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Pentru a putea încărca un fişier pe server, adăugăm în pagină un control FileUpload şi un buton&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_w-3vHIqvcOI/SYAgkjBdjEI/AAAAAAAAB4E/9BXjyH-ALR8/s1600-h/upload-un-singur-fisier.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 339px; height: 134px;" src="http://2.bp.blogspot.com/_w-3vHIqvcOI/SYAgkjBdjEI/AAAAAAAAB4E/9BXjyH-ALR8/s400/upload-un-singur-fisier.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5296268974036454466" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;În pagina aspx avem următorul cod:&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;div class="div_upload_fisier" &amp;gt;&lt;br /&gt;    &amp;lt;h2&amp;gt;Upload un singur fişier&amp;lt;/h2&amp;gt;&lt;br /&gt;    &amp;lt;em&amp;gt;Alegeţi fişierul&amp;lt;/em&amp;gt;:&lt;br /&gt;    &amp;lt;asp:FileUpload ID="fisier_1_0" runat="server" /&amp;gt;&lt;br /&gt;        &amp;lt;br /&amp;gt;&lt;br /&gt;    &amp;lt;br /&amp;gt;&lt;br /&gt;        &amp;lt;asp:Button ID="Button1" runat="server" Text="Încarcă fişier" &lt;br /&gt;            onclick="Button1_Click" /&amp;gt;&lt;br /&gt;    &lt;br /&gt;    &amp;lt;/div&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Utilizatorul va alege fişierul printr-un click pe browse. După alegerea fişierului pentru upload, la click pe buton, pagina va trimite datele spre server. Metoda PostedFile.SaveAs a unui control FileUpload salveaza fisierul pe disc. Sintaxa pentru un control cu id-ul &lt;span style="font-weight:bold;"&gt;FileUpload1&lt;/span&gt; este:&lt;br /&gt;&lt;br /&gt;FileUpload1.PostedFile.SaveAs("cale_completă_fişier");&lt;br /&gt;&lt;br /&gt;Codul C# pentru exemplul aspx de mai sus este următorul:&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;fisier_1_0.PostedFile.SaveAs(Request.PhysicalApplicationPath + Path.GetFileName(fisier_1_0.PostedFile.FileName));&lt;br /&gt;&lt;/div&gt;&lt;br /&gt; &lt;br /&gt;Metoda SaveAs() trebuie să primească ca parametru un string ce reprezintă calea către fişier + numele fişierului. În cazul de mai sus, &lt;span style="font-weight:bold;"&gt;Request.PhysicalApplicationPath&lt;/span&gt; returnează calea fizică curentă a apicaţiei web, iar &lt;span style="font-weight:bold;"&gt;Path.GetFileName()&lt;/span&gt; returnează numele fişierului ales de utilizator pentru upload. &lt;span style="font-weight:bold;"&gt;fisier_1_0.PostedFile.FileName&lt;/span&gt; conţine calea+numele original al fişierului.&lt;br /&gt;&lt;br /&gt;Clasa Path necesită folosirea namespace-ului System.IO. Putem scrie &lt;span style="font-style:italic;"&gt;using System.IO&lt;/span&gt; sau să procedăm ca în imaginea de mai jos (click dreapta pe cuvântul &lt;span style="font-weight:bold;"&gt;Path&lt;/span&gt;)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_w-3vHIqvcOI/SYAlmD7ZF_I/AAAAAAAAB4M/AQyNhJnF3O4/s1600-h/resolve.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 339px; height: 149px;" src="http://4.bp.blogspot.com/_w-3vHIqvcOI/SYAlmD7ZF_I/AAAAAAAAB4M/AQyNhJnF3O4/s400/resolve.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5296274497607374834" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Upload dinamic&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Pentru a putea face un upload dinamic (adică să lăsăm utilizatorul să aleagă câte fişiere vrea) avem nevoie de puţin javascript.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_w-3vHIqvcOI/SYAnO-5wfeI/AAAAAAAAB4U/SyJmO9qSXKQ/s1600-h/upload-dinamic.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 341px; height: 151px;" src="http://2.bp.blogspot.com/_w-3vHIqvcOI/SYAnO-5wfeI/AAAAAAAAB4U/SyJmO9qSXKQ/s400/upload-dinamic.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5296276300144606690" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Codul javascript este următorul (în partea de HEAD)&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&amp;lt;script language="javascript" type="text/javascript"&amp;gt;&lt;br /&gt;    var j=0;&lt;br /&gt;        function adauga_doc() {&lt;br /&gt;            j++;&lt;br /&gt;&lt;br /&gt;        var a = document.createElement('input');&lt;br /&gt;            var b = document.createElement('br');&lt;br /&gt;            a.setAttribute('type', 'file');&lt;br /&gt;            a.setAttribute('id', 'fisier_2_' + j);&lt;br /&gt;            a.setAttribute('name', 'fisier_2_' + j);&lt;br /&gt;&lt;br /&gt;            document.getElementById('adauga_documente_div').appendChild&lt;br /&gt;(a);&lt;br /&gt;            document.getElementById('adauga_documente_div').appendChild&lt;br /&gt;(b);&lt;br /&gt;        }&lt;br /&gt;    &amp;lt;/script&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Funcţia &lt;span style="font-weight:bold;"&gt;adauga_doc()&lt;/span&gt; va adăuga un control &lt;span style="font-weight:bold;"&gt;&amp;lt;input type="file"&amp;gt;&lt;/span&gt; pentru upload-ul fişierelor. În mod normal acest control necesită ca tag-ul &lt;span style="font-weight:bold;"&gt;&amp;lt;form&amp;gt;&lt;/span&gt; să conţină atributul &lt;span style="font-weight:bold;"&gt;enctype="multipart/form-data"&lt;/span&gt; dar deoarece avem un control FileUpload pe pagină, acel atribut este creat automat de ASP .NET. Se crează elementul input de tip file cu id-ul şi numele unic (prin incrementarea variabilei &lt;span style="font-weight:bold;"&gt;j&lt;/span&gt;) ori de câte ori utilizatorul apasă pe link-ul "&lt;span style="font-weight:bold;"&gt;încă un fişier&lt;/span&gt;". În acest fel vom avea controale cu &lt;span style="font-weight:bold;"&gt;id şi nume unic&lt;/span&gt; pentru a nu exista probleme la încărcare.&lt;br /&gt;&lt;br /&gt;În secţiunea body avem următorul cod HTML&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&amp;lt;div class="div_upload_dinamic"&amp;gt;&lt;br /&gt;    &amp;lt;h2&amp;gt;Upload dinamic&amp;lt;/h2&amp;gt;&lt;br /&gt;        &amp;lt;em&amp;gt;Alegeţi un fişier&amp;lt;/em&amp;gt;:&lt;br /&gt;        &amp;lt;asp:FileUpload ID="fisier_2_0" runat="server" /&amp;gt;&lt;br /&gt;        &amp;lt;div id="adauga_documente_div" runat="server"&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;        &amp;lt;a onclick="adauga_doc();" style="cursor:pointer;color:Blue;text-decoration:underline;"&amp;gt;Încă un fişier&amp;lt;/a&amp;gt;&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;        &lt;br /&gt;        &amp;lt;asp:Button ID="Button2" runat="server" Text="Încarcă fişierele" &lt;br /&gt;            onclick="Button2_Click" /&amp;gt;&lt;br /&gt;        &amp;lt;br /&amp;gt;&lt;br /&gt;    &amp;lt;/div&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Observăm că la elementul &amp;lt;a&amp;gt; avem atributul &lt;span style="font-weight:bold;"&gt;onclick&lt;/span&gt; ce execută funcţia &lt;span style="font-weight:bold;"&gt;adauga_doc()&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Codul C# pentru salvarea fişierelor pe server este următorul:&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;string nume_fisier;&lt;br /&gt;        for (int j = 0; j &lt; Request.Files.Count; j++)&lt;br /&gt;        {&lt;br /&gt;&lt;br /&gt;            if (Request.Files[j].ContentLength &gt; 0)&lt;br /&gt;            {&lt;br /&gt;                nume_fisier = Path.GetFileName(Request.Files[j].FileName);&lt;br /&gt;                Request.Files[j].SaveAs(Request.PhysicalApplicationPath.ToString&lt;br /&gt;() + nume_fisier);&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Request.Files reprezintă colecţia de fişiere încărcate. Parcurgem fişierele încărcate şi le salvăm rând pe rând pe server.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Descărcaţi acest exemplu&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;iframe scrolling="no" marginheight="0" marginwidth="0" frameborder="0" style="width:240px;height:66px;margin:3px;padding:0;border:1px solid #dde5e9;background-color:#ffffff;" src="http://cid-242fcc4872b73089.skydrive.live.com/embedrowdetail.aspx/Exemple/exemplu-upload-fisiere.zip"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Limitarea dimensiunii fişierelor încărcate&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Putem modifica dimensiunea maximă pe care o poate accepta ASP .NET la upload-ul fişierelor (implicit e 4 mega bytes). În fişierul web.config căutăm tag-ul &lt;span style="font-weight:bold;"&gt;&amp;lt;system.web&amp;gt;&lt;/span&gt; şi adăugăm următoarea linie&lt;br /&gt;&lt;br /&gt;    &lt;span style="font-weight:bold;"&gt;&amp;lt;httpRuntime maxRequestLength="10240"/&amp;gt;&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;10240 reprezintă 10 mega. Putem modifica valoarea în kilobytes a maxRequestLength.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-3099842307809253804?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/3099842307809253804/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=3099842307809253804' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/3099842307809253804'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/3099842307809253804'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2009/01/upload-fisiere-upload-dinamic.html' title='Upload fisiere. Upload dinamic'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_w-3vHIqvcOI/SYAgW7YMdpI/AAAAAAAAB38/OqwjQQ79iuk/s72-c/fileupload.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-6594670907967334840</id><published>2009-01-27T23:22:00.002+02:00</published><updated>2009-01-27T23:55:07.280+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web.config'/><category scheme='http://www.blogger.com/atom/ns#' term='aspx'/><category scheme='http://www.blogger.com/atom/ns#' term='app_code'/><category scheme='http://www.blogger.com/atom/ns#' term='cs'/><category scheme='http://www.blogger.com/atom/ns#' term='app_data'/><title type='text'>Structura unei aplicatii web in ASP .NET</title><content type='html'>Într-o aplicaţie web realizată cu ASP .NET vom avea următoarele tipuri de fişiere şi directoare importante&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Fişiere cu extensia .aspx&lt;/span&gt; reprezintă locul unde este stocat conţinutul paginii web. Se pot adăuga elemente HMTL, javascript, controale ASP .NET server-side.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Fişierele cu extensia .cs&lt;/span&gt; reprezintă codul ce se va executa pe server. Se poate scrie cod C# sau Visual Basic. Se pot defini variabile, funcţii, clase, etc.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Fişierul web.config&lt;/span&gt; este un fişier de configurare unde este stocată informaţia referitoare la aplicaţia web. În acest fişier se pot defini mai multe proprietăţi ale aplicaţiei. De exemplu, putem defini string-ul de conectare la baza de date pentru a-l putea folosi in orice pagină, sau putem modifica limita mărimii fişierelor upload-ate.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Fişierul Global.asax&lt;/span&gt; este opţional şi se poate folosi pentru a manipula anumite evenimente cum ar fi Application_Start, Application_End, Session_Start, Session_End&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Directorul BIN&lt;/span&gt; este folosit pentru a stoca diverse fişiere dll folosite ca şi componente sau controale în aplicaţie.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Directorul App_Code&lt;/span&gt; conţine cod ce se va compila şi va fi vizibil în orice pagină a aplicaţiei web. Se pot stoca aici de exemplu diverse clase.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Directorul App_Data&lt;/span&gt; conţine fişiere mdf specifice bazelor de date SQL sau Access.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-6594670907967334840?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/6594670907967334840/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=6594670907967334840' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/6594670907967334840'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/6594670907967334840'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2009/01/structura-unei-aplicatii-web-in-asp-net.html' title='Structura unei aplicatii web in ASP .NET'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-7764839329682814181</id><published>2009-01-27T19:32:00.009+02:00</published><updated>2009-01-27T20:32:02.192+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='debug'/><category scheme='http://www.blogger.com/atom/ns#' term='intellisense'/><title type='text'>Debugging şi intellisense</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Debug-ul&lt;/span&gt; reprezintă procesul prin care se caută şi se repară erorile din program. Web Developer are integrat o unealtă de debugging. Să vedem cum se foloseşte:&lt;br /&gt;&lt;br /&gt;Avem pe o pagină un textbox unde userul poate introduce o valoare, un buton, şi un Label. După introducerea valorii (un număr întreg), utilizatorul face click pe buton, iar rezultatul va fi afişat în label. &lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_w-3vHIqvcOI/SX9N1H1LoBI/AAAAAAAAB3U/jbN-3DUnTmw/s1600-h/textbox-buton-label.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 257px; height: 147px;" src="http://1.bp.blogspot.com/_w-3vHIqvcOI/SX9N1H1LoBI/AAAAAAAAB3U/jbN-3DUnTmw/s400/textbox-buton-label.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5296037261841506322" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Facem dublu click pe butonul din pagină, ca să se creeze funcţia ataşată evenimentului de click al butonului. Am scris un mic cod pentru acea funcţie. Ca să putem urmări pas cu pas cum funcţionează programul, facem un click în dreptul primei linii de cod ce se va executa conform imaginii de mai jos&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_w-3vHIqvcOI/SX9Ol2QSDZI/AAAAAAAAB3c/ljyNn-ye7vs/s1600-h/debug-server-side.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 345px; height: 400px;" src="http://3.bp.blogspot.com/_w-3vHIqvcOI/SX9Ol2QSDZI/AAAAAAAAB3c/ljyNn-ye7vs/s400/debug-server-side.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5296038098936925586" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Rulăm programul cu F5 iar Web Developer-ul va suspenda execuţia programului în dreptul liniei de cod marcate cu bulina roşie.&lt;br /&gt;&lt;br /&gt;Folosim cele 3 butoane din imaginea de mai jos pentru a merge pas cu pas pe liniile de cod (primul buton - Step Into), pas cu pas dar fără a intra în procedurile întâlnite în cale (al doilea buton - Step Over) sau a sări afară în cazul în care s-a intrat într-o funcţie cu Step Into (al treilea buton - Step Out) &lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_w-3vHIqvcOI/SX9RKyXZ6FI/AAAAAAAAB3s/hyZEXxpCjIw/s1600-h/step-into-step-over-step-out.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 136px;" src="http://2.bp.blogspot.com/_w-3vHIqvcOI/SX9RKyXZ6FI/AAAAAAAAB3s/hyZEXxpCjIw/s400/step-into-step-over-step-out.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5296040932571474002" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cât timp execuţia e suspendată putem trece cu mouse-ul deasupra mai multor variabile. Putem să vedem ce valori au acestea, lucru folositor în cazul în care nu ştim de unde apare eroarea.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_w-3vHIqvcOI/SX9Qy18g4mI/AAAAAAAAB3k/4__IcaP6Lro/s1600-h/debugging-in-actiune.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 382px;" src="http://1.bp.blogspot.com/_w-3vHIqvcOI/SX9Qy18g4mI/AAAAAAAAB3k/4__IcaP6Lro/s400/debugging-in-actiune.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5296040521215566434" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Un alt lucru util al Web Developer-ului este intellisense. &lt;span style="font-weight:bold;"&gt;Intellisense&lt;/span&gt; reprezintă auto-sugestiile ce apar la scrierea unei metode. După tastarea operatorului "&lt;span style="font-weight:bold;"&gt;.&lt;/span&gt;" (punct) vor apărea lista metodelor. În cazul în care lista nu apare se poate vizualiza folosind combinaţia de taste CTRL + SPACE&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_w-3vHIqvcOI/SX9S2cUzQQI/AAAAAAAAB30/11gIo72TUME/s1600-h/intellisense.PNG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 118px;" src="http://2.bp.blogspot.com/_w-3vHIqvcOI/SX9S2cUzQQI/AAAAAAAAB30/11gIo72TUME/s400/intellisense.PNG" border="0" alt=""id="BLOGGER_PHOTO_ID_5296042782080844034" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-7764839329682814181?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/7764839329682814181/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=7764839329682814181' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/7764839329682814181'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/7764839329682814181'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2009/01/debugging-si-intellisense.html' title='Debugging şi intellisense'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_w-3vHIqvcOI/SX9N1H1LoBI/AAAAAAAAB3U/jbN-3DUnTmw/s72-c/textbox-buton-label.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-7025653917604735612</id><published>2008-08-19T22:50:00.009+03:00</published><updated>2008-08-19T23:23:12.924+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='proprietati'/><category scheme='http://www.blogger.com/atom/ns#' term='evenimente'/><title type='text'>Modificarea primei pagini şi a butonului</title><content type='html'>Am creat prima pagină în Web Developer dar nu prea face mare lucru. Acum o vom modifica astfel încât butonul să execute un cod.&lt;br /&gt;&lt;br /&gt;În partea de design, facem un click pe butonul recent adăugat şi ne vom concentra atenţia în dreapta jos la secţiunea&lt;span style="font-weight:bold;"&gt; Proprietăţi şi evenimente&lt;/span&gt; (Properties, Events).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_w-3vHIqvcOI/SKslN4emMoI/AAAAAAAABIM/953GDHr1EBU/s1600-h/web-developer-5.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_w-3vHIqvcOI/SKslN4emMoI/AAAAAAAABIM/953GDHr1EBU/s400/web-developer-5.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5236319912177578626" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;În secţiunea Properties vom vedea şi vom putea modifica o multitudine de proprietăţi ce aparţin butonului nostru, cum ar fi culoare, font, buton vizibil sau invizibil, textul butonului, şi altele. Aceste modificări ţin de partea interfeţei butonului. De exemplu, putem scrie la proprietatea &lt;span style="font-weight:bold;"&gt;Text&lt;/span&gt; precum în imaginea de mai sus.&lt;br /&gt;&lt;br /&gt;Vrem ca butonul nostru să execute ceva. Pentru aceasta, facem dublu click pe buton şi Web Developer va crea pentru noi funcţia ataşată butonului. Observăm că funcţia este în fişierul &lt;span style="font-weight:bold;"&gt;default.aspx.cs&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_w-3vHIqvcOI/SKsoHf58HPI/AAAAAAAABIc/narv2SAMncI/s1600-h/web-developer-6.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_w-3vHIqvcOI/SKsoHf58HPI/AAAAAAAABIc/narv2SAMncI/s400/web-developer-6.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5236323101037042930" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt; Codul acestei funcţii se va executa când vom face click pe buton. Acestea sunt &lt;span style="font-weight:bold;"&gt;evenimentele&lt;/span&gt;. &lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_w-3vHIqvcOI/SKsn-z26JrI/AAAAAAAABIU/I6GeuSU7uys/s1600-h/web-developer-7.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_w-3vHIqvcOI/SKsn-z26JrI/AAAAAAAABIU/I6GeuSU7uys/s400/web-developer-7.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5236322951774217906" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Evenimentele reprezintă acţiunile ce le execută un obiect. De exemplu, butonul nostru poate executa un cod la click pe acesta. Click pe buton reprezintă un eveniment. Evenimentele le putem vedea în fereastra Properties printr-un click pe iconiţa &lt;span style="font-style:italic;"&gt;fulger&lt;/span&gt; (iconiţa de lângă fulger reprezintă proprietăţile).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_w-3vHIqvcOI/SKspXbBSazI/AAAAAAAABIk/KUH1HtAT_gs/s1600-h/proprietati-evenimente.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_w-3vHIqvcOI/SKspXbBSazI/AAAAAAAABIk/KUH1HtAT_gs/s400/proprietati-evenimente.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5236324474115222322" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Să alegem din toolbox un alt obiect, de data aceasta un &lt;span style="font-weight:bold;"&gt;Label&lt;/span&gt; pe care îl tragem lângă buton. În funcţia creată butonului, scriem conform imaginii de mai jos.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_w-3vHIqvcOI/SKsrPqfKkNI/AAAAAAAABIs/mBNLbeua0kk/s1600-h/exec.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_w-3vHIqvcOI/SKsrPqfKkNI/AAAAAAAABIs/mBNLbeua0kk/s400/exec.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5236326539851370706" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Apăsăm F5, site-ul se încarcă şi după ce facem click pe buton, vom vedea că se va schimba textul obiectului Label.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-7025653917604735612?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/7025653917604735612/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=7025653917604735612' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/7025653917604735612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/7025653917604735612'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/08/modificarea-primei-pagini-i-butonului.html' title='Modificarea primei pagini şi a butonului'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_w-3vHIqvcOI/SKslN4emMoI/AAAAAAAABIM/953GDHr1EBU/s72-c/web-developer-5.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-709779125027297979</id><published>2008-08-19T22:02:00.014+03:00</published><updated>2008-08-19T22:47:28.999+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web developer'/><category scheme='http://www.blogger.com/atom/ns#' term='buton'/><category scheme='http://www.blogger.com/atom/ns#' term='site'/><title type='text'>Să începem un site</title><content type='html'>Pentru a crea un site nou în Web Developer procedăm astfel.&lt;br /&gt;&lt;br /&gt;Click pe &lt;span style="font-weight:bold;"&gt;File -&gt; New WebSite&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_w-3vHIqvcOI/SKsaaVeIPZI/AAAAAAAABHk/MqO-dQzZ38w/s1600-h/web-developer-1.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_w-3vHIqvcOI/SKsaaVeIPZI/AAAAAAAABHk/MqO-dQzZ38w/s400/web-developer-1.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5236308031490768274" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;În fereastra ce apare putem alege directorul unde vor fi stocate fişierele ASP .NET şi limbajul de programare: C# sau Visual Basic. În acest tutorial se va folosi C#.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_w-3vHIqvcOI/SKsbGsaMjWI/AAAAAAAABHs/MHoW4hVowq8/s1600-h/web-developer-2.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_w-3vHIqvcOI/SKsbGsaMjWI/AAAAAAAABHs/MHoW4hVowq8/s400/web-developer-2.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5236308793562533218" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class='nota'&gt;Este bine să aveţi cunoştinţe minime de HTML, CSS şi programare&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;După alegerea directorului site-ului şi a limbajului de programare, vom vedea ceva similar cu imaginea de mai jos:&lt;br /&gt;&lt;br /&gt; &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_w-3vHIqvcOI/SKscGqUAFEI/AAAAAAAABH0/Bj8bZGDmppU/s1600-h/web-developer-3.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_w-3vHIqvcOI/SKscGqUAFEI/AAAAAAAABH0/Bj8bZGDmppU/s400/web-developer-3.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5236309892511306818" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Referitor la imagine, vom avea câteva explicaţii:&lt;br /&gt;&lt;br /&gt; - în partea de sus-stânga putem vedea &lt;span style="font-weight:bold;"&gt;default.aspx&lt;/span&gt;. Acesta e fişierul implicit al site-ului ( echivalent în HTML este &lt;span style="font-weight:bold;"&gt;index.html&lt;/span&gt; ) iar dacă intrăm pe site este primul ce se va executa.&lt;br /&gt; - tot în stânga sus este toolbox-ul. Dacă trecem cu mouse-ul deasupra se va afişa. Lângă butonul X de închidere al toolbox-ului este &lt;span style="font-weight:bold;"&gt;autohide&lt;/span&gt;. La un click pe autohide toolbox-ul va rămâne fix.&lt;br /&gt; - jos-stânga vom vedea 3 butoane: Design, Split şi Source. Dacă intrăm în partea de Design vom vedea ceea ce se vede efectiv pe site (butoane, tabele, etc), în partea de Source vom vedea codul HTML iar Split va împărţi fereastra Web Developer-ului în 2 (pentru Design şi Source).&lt;br /&gt; - în partea de jos la Output vom avea evetualele mesaje de eroare sau alte mesaje.&lt;br /&gt; - în dreapta-sus se află solution explorer: lista cu fişierele site-ului. Fişierul &lt;span style="font-weight:bold;"&gt;web.config&lt;/span&gt; se crează automat, dar despre el se va discuta separat. Putem observa un semn &lt;span style="font-weight:bold;"&gt;+&lt;/span&gt; în dreptul default.aspx. Fiecare fişier &lt;span style="font-weight:bold;"&gt;aspx&lt;/span&gt; are (este bine să aibă) separat un fişier cu extensia &lt;span style="font-weight:bold;"&gt;cs&lt;/span&gt; pentru codul server side ce va fi scris în c#.&lt;br /&gt; - partea din dreapta-jos şi anume properties va fi discutată separat.&lt;br /&gt;&lt;br /&gt;În continuare selectăm partea de &lt;span style="font-weight:bold;"&gt;Design&lt;/span&gt;, şi mergem cu mouse-ul deasupra toolbox-ului.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_w-3vHIqvcOI/SKsg4govCuI/AAAAAAAABH8/Tvrl05wTaAU/s1600-h/toolbox.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_w-3vHIqvcOI/SKsg4govCuI/AAAAAAAABH8/Tvrl05wTaAU/s400/toolbox.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5236315146953886434" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt; Alegem obiectul &lt;span style="font-weight:bold;"&gt;Button&lt;/span&gt; (buton) şi îl tragem pe spaţiul liber pe pagină.&lt;br /&gt;&lt;br /&gt;Apăsăm F5 şi serverul integrat va porni.&lt;br /&gt;Web Developer vă va întreba dacă doriţi debug (click pe OK în fereastra ce apare). Este bine să folosim debug pentru că dacă apare o eroare, Web Developer ne va semnala eroarea din linia de cod printr-un mesaj.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_w-3vHIqvcOI/SKsjKr0TS4I/AAAAAAAABIE/AGb4IBnJ8vI/s1600-h/web-developer-9.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_w-3vHIqvcOI/SKsjKr0TS4I/AAAAAAAABIE/AGb4IBnJ8vI/s400/web-developer-9.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5236317658216090498" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt; Veţi vedea în browserul favorit prima pagină facută cu Web Developer ce va conţine un buton (vom vedea ce putem face cu acest buton)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-709779125027297979?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/709779125027297979/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=709779125027297979' title='1 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/709779125027297979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/709779125027297979'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/08/sa-incepem-un-site.html' title='Să începem un site'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_w-3vHIqvcOI/SKsaaVeIPZI/AAAAAAAABHk/MqO-dQzZ38w/s72-c/web-developer-1.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-4153628454756072556</id><published>2008-08-19T21:26:00.008+03:00</published><updated>2008-08-19T22:06:34.536+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web developer'/><category scheme='http://www.blogger.com/atom/ns#' term='debug'/><category scheme='http://www.blogger.com/atom/ns#' term='intellisense'/><title type='text'>Introducere în Web Developer 2008</title><content type='html'>Web Developer reprezintă unealta celor de la Microsoft cu ajutorul căruia putem creea pagini web simplu şi fără să scriem prea mult cod. Printre facilităţile oferite de Web Developer amintim următoarele:&lt;br /&gt;&lt;br /&gt; - &lt;span style="font-weight:bold;"&gt;Obiectele se pot adăuga cu uşurinţă&lt;/span&gt;. Tot ce trebuie să facem pentru adăugarea unui buton pe pagină este să tragem obiectul buton din &lt;span style="font-weight:bold;"&gt;toolbox&lt;/span&gt; (bara de unelte). La fel putem proceda cu o mulţime de alte obiecte.&lt;br /&gt;&lt;br /&gt; - &lt;span style="font-weight:bold;"&gt;Server integrat&lt;/span&gt;. Web Developer are integrat un server web pentru a putea rula paginile create. Programarea în ASP .NET este server side, ceea ce înseamnă că (virgulă) codul trebuie executat pe server iar apoi trebuie retrimis browserului clientului sub formă HTML. De această procedură se ocupă serverul integrat.&lt;br /&gt;&lt;br /&gt; - &lt;span style="font-weight:bold;"&gt;Verificarea erorilor&lt;/span&gt;. Web Developer vă avertizează când aţi scris o linie de cod eronată şi vă oferă o posibilă soluţie pentru a remedia eroarea. Aceasta ajută în corectarea şi scrierea eficientă a codului.&lt;br /&gt;&lt;br /&gt; - &lt;span style="font-weight:bold;"&gt;Intellisense&lt;/span&gt;. Oare ce metode şi evenimente are obiectul acesta? Termenul intellisense se referă la afişarea tuturor metodelor şi evenimentelor unui obiect plus o scurtă descriere. În acest mod vom putea vedea ce &lt;span style="font-style:italic;"&gt;ştie&lt;/span&gt; fiecare obiect.&lt;br /&gt;&lt;br /&gt; - &lt;span style="font-weight:bold;"&gt;Debugging&lt;/span&gt;. Este o eroare în cod sau ceva nu merge cum ar trebui? Nici o problemă, Web Developer vă oferă posibilitatea de a verifica valorile variabilelor, de a urmări codul pas cu pas, sau de a opri execuţia într-un punct anume.&lt;br /&gt;&lt;br /&gt;... plus multe alte facilităţi.&lt;br /&gt;&lt;br /&gt;După instalare va fi necesar ca Web Developer să fie înregistrat gratuit pe site la Microsoft în termen de 30 zile. Pentru înregistrare facem click în meniul Web Developer pe &lt;span style="font-weight:bold;"&gt;Help -&gt; Register Product&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-4153628454756072556?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/4153628454756072556/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=4153628454756072556' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/4153628454756072556'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/4153628454756072556'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/08/introducere-in-web-developer-2008.html' title='Introducere în Web Developer 2008'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-6931577517983022422</id><published>2008-08-17T11:35:00.009+03:00</published><updated>2008-08-17T13:03:38.825+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='metode'/><category scheme='http://www.blogger.com/atom/ns#' term='functii'/><title type='text'>Funcţii (metode)</title><content type='html'>Cu ajutorul funcţiilor putem să organizăm codul. Fiecare funcţie poate conţine mai multe instrucţiuni, poate returna sau nu o valoare, sau poate contine parametri. Utilizarea funcţiilor este utilă când avem nevoie de a repeta o bucată de cod. Nu vom scrie de 10 ori aceeaşi bucată de cod, ci vom avea o funcţie ce conţine codul nostru, pe care o apelăm când avem nevoie.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Funcţie ce nu returnează valoare&lt;/span&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;void&lt;/span&gt; Metoda1()&lt;br /&gt;{&lt;br /&gt;&lt;span class='comentariu'&gt;// Cod&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Funcţie ce returnează o valoare întreagă&lt;/span&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;int&lt;/span&gt; Metoda2()&lt;br /&gt;{&lt;br /&gt;&lt;span class='tip_var'&gt;int&lt;/span&gt; i=10;&lt;br /&gt;&lt;span class='tip_var'&gt;return&lt;/span&gt; i;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Funcţie cu parametri&lt;/span&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;string&lt;/span&gt; Metoda3(string s)&lt;br /&gt;{&lt;br /&gt;&lt;span class='tip_var'&gt;return&lt;/span&gt; s;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Mai sus sunt 3 exemple de funcţii ce sunt declarate. Pentru apelarea funcţiilor, adica executarea codului lor putem scrie:&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;Metoda1();&lt;br /&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;int&lt;/span&gt; x;&lt;br /&gt;&lt;br /&gt;x=Metoda2(); &lt;span class='comentariu'&gt;// Va avea valoarea 10&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;string&lt;/span&gt; y;&lt;br /&gt;&lt;br /&gt;y=Metoda2(&lt;span class='caractere'&gt;"abc"&lt;/span&gt;); &lt;span class='comentariu'&gt;// Va avea valoarea &lt;span style="font-style:italic;"&gt;abc&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-6931577517983022422?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/6931577517983022422/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=6931577517983022422' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/6931577517983022422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/6931577517983022422'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/08/functii-metode.html' title='Funcţii (metode)'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-2655364344875159445</id><published>2008-07-04T15:29:00.003+03:00</published><updated>2008-07-04T15:46:13.503+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='while'/><category scheme='http://www.blogger.com/atom/ns#' term='do...while'/><title type='text'>While, do...while</title><content type='html'>Funcţia &lt;em&gt;WHILE&lt;/em&gt; se foloseşte atunci când dorim să parcurgem o bucată de cod până când o anumită condiţie se îndeplineşte. De exemplu, până când variabila &lt;strong&gt;i&lt;/strong&gt; nu are valoarea 5 , codul se execută. Când variabila are valoarea 5, codul nu se mai execută.&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;int&lt;/span&gt; i=0;&lt;br /&gt;&lt;span class='tip_var'&gt;while&lt;/span&gt; (i&lt;5)&lt;br /&gt;{&lt;br /&gt;i++;&lt;br /&gt;&lt;span class='comentariu'&gt;//acest cod se execută de 5 ori&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Funcţia &lt;em&gt;do...while&lt;/em&gt; este similară funcţiei while şi se foloseşte după cum urmează:&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;int&lt;/span&gt; i=0;&lt;br /&gt;&lt;span class='tip_var'&gt;do&lt;/span&gt;&lt;br /&gt;{&lt;br /&gt;i++;&lt;br /&gt;&lt;span class='comentariu'&gt;// Acest cod se execută de 5 ori.&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;span class='tip_var'&gt;while&lt;/span&gt; (i&lt;5);&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Care este diferenţa între while şi do..while?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;În cazul funcţiei while, dacă condiţia este falsă din start, nu se va executa nimic. În cazul funcţiei do...while, dacă condiţia de evaluare este falsă din start &lt;strong&gt;codul se va executa odata&lt;/strong&gt;, iar apoi condiţia va fi evaluată ca falsă şi se va ieşi din cod.&lt;br /&gt;&lt;br /&gt;&lt;div class='nota'&gt;În caz că se doreşte ieşirea din executarea codului din interiorul funcţiei while sau do...while înainte de a fi îndeplinită condiţia, se poate folosi comanda &lt;span class='tip_var'&gt;break&lt;/span&gt;;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-2655364344875159445?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/2655364344875159445/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=2655364344875159445' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/2655364344875159445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/2655364344875159445'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/07/while-dowhile.html' title='While, do...while'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-7875616860828343691</id><published>2008-05-27T12:10:00.005+03:00</published><updated>2008-05-27T12:33:22.091+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='foreach'/><title type='text'>foreach</title><content type='html'>Cu ajutorul funcţiei &lt;strong&gt;foreach&lt;/strong&gt; putem parcurge elementele unui set de date fără să avem o variabilă pentru incrementare. În schimb, vom avea o variabilă ce are tipul de date acelaşi cu cel căutat. Funcţia e folositoare când vrem să parcurgem de exemplu elementele unui array.&lt;br /&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;string&lt;/span&gt; [] sir={&lt;span class='caractere'&gt;"a"&lt;/span&gt;,&lt;span class='caractere'&gt;"b"&lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;foreach&lt;/span&gt;(&lt;span class='tip_var'&gt;string&lt;/span&gt; element &lt;span class='tip_var'&gt;in&lt;/span&gt; sir)&lt;br /&gt;{&lt;br /&gt;&lt;span class='comentariu'&gt;//se execută de 2 ori&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Funcţia va parcurge toate elementele şirului. Observăm că nu mai avem nevoie să ştim câte elemente are şirul, funcţia foreach ştie să le parcurgă pe toate.&lt;br /&gt;&lt;br /&gt;&lt;div class='nota'&gt;Funcţia FOREACH nu permite modificarea valorilor elementelor ce se parcurg.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-7875616860828343691?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/7875616860828343691/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=7875616860828343691' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/7875616860828343691'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/7875616860828343691'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/05/foreach.html' title='foreach'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-3413587668862003034</id><published>2008-05-07T15:24:00.001+03:00</published><updated>2008-05-07T15:26:35.632+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='for'/><title type='text'>Functia FOR</title><content type='html'>Funcţia FOR este folosită foarte des în programare, fiind necesară pentru repetarea unei bucăţi de cod.&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;for&lt;/span&gt; (&lt;span class='tip_var'&gt;int&lt;/span&gt; i=0;i&lt;5;i++)&lt;br /&gt;{&lt;br /&gt;&lt;span class='comentariu'&gt;//se execută de 5 ori&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Sintaxa funcţiei FOR se compune din 3 părţi principale:&lt;br /&gt;&lt;br /&gt;&lt;em&gt;int i=0&lt;/em&gt; - în prima parte se iniţializează şi / sau se declară variabila folosită ca şi contor, în acest caz &lt;em&gt;i&lt;/em&gt;. Variabila se poate declara şi înaintea funcţiei FOR, dar deoarece este folosită pentru contor în interiorul FOR-ului se obişnuieşte să se declare la folosirea funcţiei, nemaifiind valabilă la ieşirea din FOR.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;i&lt;5&lt;/em&gt; - a 2-a parte reprezintă condiţia care trebuie îndeplinită pentru ca bucla să se repete.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;i++&lt;/em&gt; - a 3-a parte incrementează variabila contor. În acest caz se incrementează cu 1. Dacă am fi dorit ca la fiecare buclă să se incrementeze contorul cu 2, în loc de &lt;em&gt;i++&lt;/em&gt; am fi avut &lt;em&gt;i+2&lt;/em&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-3413587668862003034?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/3413587668862003034/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=3413587668862003034' title='1 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/3413587668862003034'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/3413587668862003034'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/05/functia-for.html' title='Functia FOR'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-2296683219050112572</id><published>2008-04-04T09:12:00.003+03:00</published><updated>2008-04-04T09:26:48.594+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='switch'/><title type='text'>Switch</title><content type='html'>Switch se foloseşte pentru a testa mai multe valori pentru o variabilă sau o expresie. Variabila sau expresia trebuie să fie de tipul int, string, bool, char sau enum. Sintaxa este prezentată mai jos:&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;switch&lt;/span&gt;(numar)&lt;br /&gt;{&lt;br /&gt;&lt;span class='tip_var'&gt;case&lt;/span&gt; 1:&lt;br /&gt;&lt;span class='comentariu'&gt;// cod&lt;/span&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;span class='tip_var'&gt;case&lt;/span&gt; 2:&lt;br /&gt;&lt;span class='comentariu'&gt;//cod&lt;/span&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;span class='tip_var'&gt;default&lt;/span&gt;:&lt;br /&gt;&lt;span class='comentariu'&gt;//cod&lt;/span&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;break&lt;/span&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Switch va verifica valoarea variabilei &lt;em&gt;numar&lt;/em&gt;. Dacă este 1, se va executa codul ce corespunde lui &lt;em&gt;'case 1'&lt;/em&gt;. Fiecare &lt;em&gt;case&lt;/em&gt; se termină cu instrucţiunea &lt;strong&gt;break;&lt;/strong&gt;. Dacă nici una din condiţii nu este îndeplinită (variabila &lt;em&gt;numar&lt;/em&gt; nu are nici valoarea 1, nici 2), se va executa codul ce corespunde instrucţiunii &lt;strong&gt;default&lt;/strong&gt;.&lt;br /&gt;Se poate testa aceeaşi bucată de cod pentru mai multe valori:&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;switch&lt;/span&gt;(numar)&lt;br /&gt;{&lt;br /&gt;&lt;span class='tip_var'&gt;case&lt;/span&gt; 1:&lt;br /&gt;&lt;span class='tip_var'&gt;case&lt;/span&gt; 2:&lt;br /&gt;&lt;span class='comentariu'&gt;//codul se execută atât pentru 1 cât şi pentru 2&lt;/span&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;span class='tip_var'&gt;default&lt;/span&gt;:&lt;br /&gt;&lt;span class='comentariu'&gt;//cod&lt;/span&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;break&lt;/span&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class='nota'&gt;În cazul de mai sus, variabila număr este de tip &lt;span style="font-style:italic;"&gt;int&lt;/span&gt;. Pentru variabile &lt;span style="font-style:italic;"&gt;string&lt;/span&gt; se va testa astfel: &lt;br /&gt;&lt;br /&gt;&lt;span class="tip_var"&gt;case&lt;/span&gt; &lt;span class='caractere'&gt;"valoare"&lt;/span&gt;:&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-2296683219050112572?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/2296683219050112572/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=2296683219050112572' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/2296683219050112572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/2296683219050112572'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/04/switch.html' title='Switch'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-5370884337209575600</id><published>2008-03-16T13:30:00.003+02:00</published><updated>2008-03-16T13:54:31.804+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='if'/><title type='text'>Functia IF</title><content type='html'>Funcţia If se foloseşte pentru a evalua o expresie. Putem executa o bucată de cod în funcţie de rezultatul evaluării expresiei (dacă este adevărată sau falsă).&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;if&lt;/span&gt;(numar&gt;5)&lt;br /&gt;{&lt;br /&gt;&lt;span class='comentariu'&gt;//Dacă variabila &lt;em&gt;numar&lt;/em&gt; este mai mare ca 5 (condiţia este adevărată), se execută această porţiune de cod&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;span class='tip_var'&gt;else&lt;/span&gt;&lt;br /&gt;{&lt;br /&gt;&lt;span class='comentariu'&gt;//Dacă variabila &lt;em&gt;numar&lt;/em&gt; &lt;span style="font-weight:bold;"&gt;nu&lt;/span&gt; este mai mare ca 5 (condiţia este falsă), se execută această porţiune de cod&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Se pot testa mai multe condiţii una după alta.&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;if&lt;/span&gt;(...)&lt;br /&gt;{&lt;br /&gt;&lt;span class='comentariu'&gt;//...&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;span class='tip_var'&gt;else if&lt;/span&gt;(...)&lt;br /&gt;{&lt;br /&gt;&lt;span class='comentariu'&gt;//...&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;span class='tip_var'&gt;else&lt;/span&gt;&lt;br /&gt;{&lt;br /&gt;&lt;span class='comentariu'&gt;//...&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-5370884337209575600?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/5370884337209575600/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=5370884337209575600' title='1 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/5370884337209575600'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/5370884337209575600'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/03/functia-if.html' title='Functia IF'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-3594200067871599225</id><published>2008-03-14T19:31:00.002+02:00</published><updated>2008-03-14T19:50:24.135+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='conversii'/><category scheme='http://www.blogger.com/atom/ns#' term='tipuri de date'/><title type='text'>Conversii intre tipuri de date</title><content type='html'>Convertirea dintre un tip de date în altul va fi folosită foarte des. De exemplu, dacă doriţi să afişaţi un număr întreg într-o pagină web, acesta va trebui convertit în string.&lt;br /&gt;Pentru a converti un tip de date în altul putem folosi metodele clasei &lt;strong&gt;Convert&lt;/strong&gt;.&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt; &lt;span class='tip_var'&gt;int&lt;/span&gt; numar=5;&lt;br /&gt; &lt;span class='tip_var'&gt;string&lt;/span&gt; numar_afisat;&lt;br /&gt; numar_afisat=&lt;span class='clasa'&gt;Convert&lt;/span&gt;.ToString(numar); &lt;span class='comentariu'&gt;//numar_afisat="5"&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;O altă metodă de conversie ar fi cea explicită, unde tipul variabilei convertite trebuie specificat în paranteze înainte de numele variabilei.&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt; &lt;span class='tip_var'&gt;int&lt;/span&gt; numar=5;&lt;br /&gt; &lt;span class='tip_var'&gt;long&lt;/span&gt; numar_mare;&lt;br /&gt; numar_mare=(&lt;span='tip_var'&gt;long&lt;/span&gt;)numar;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt; Acest tip de conversie se foloseşte pentru mutarea datelor dintr-o variabilă în alta, în exemplul de mai sus pentru mutarea unei valori &lt;strong&gt;int&lt;/strong&gt; în &lt;strong&gt;long&lt;/strong&gt; (numere întregi de valoare mare). Nu va funcţiona în cazul conversiei de exemplu unui număr în string.&lt;br /&gt;Alte metode de conversie se pot găsi printre metodele obiectelor. &lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt; &lt;span class='tip_var'&gt;int&lt;/span&gt; numar=5;&lt;br /&gt; &lt;span class='tip_var'&gt;string&lt;/span&gt; alt_numar;&lt;br /&gt;alt_numar=numar.ToString();&lt;span class='comentariu'&gt;//Conversie din in string. alt_numar="5"&lt;/span&gt;&lt;br /&gt;numar = &lt;span class='clasa'&gt;Int32&lt;/span&gt;.Parse(alt_numar);&lt;span class='comentariu'&gt;//Conversie in int&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Revenind la ArrayList, o variabilă poate lua valorile din ArrayList specificând tipul valorilor din şir.&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;variabila_mea=&lt;span class='clasa'&gt;Convert&lt;/span&gt;.ToString(sir_variabil[0]);&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-3594200067871599225?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/3594200067871599225/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=3594200067871599225' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/3594200067871599225'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/3594200067871599225'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/03/conversii-intre-tipuri-de-date.html' title='Conversii intre tipuri de date'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-5278763905621972519</id><published>2008-03-12T09:40:00.003+02:00</published><updated>2008-03-12T09:44:59.808+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='operatii'/><category scheme='http://www.blogger.com/atom/ns#' term='variabile'/><title type='text'>Operatii cu variabile</title><content type='html'>O mulţime de operaţii se pot realiza în C#. Operaţiile simple cum ar fi adunare sau scădere şi operaţii mai complicate, de exemplu extragerea radicalului dintr-un număr.&lt;br /&gt;&lt;br /&gt;&lt;span style='text-decoration:underline;'&gt;Operaţii aritmetice&lt;/span&gt;:&lt;br /&gt;&lt;strong&gt;+&lt;/strong&gt; Adunare &lt;br /&gt;&lt;strong&gt;-&lt;/strong&gt; Scădere&lt;br /&gt;&lt;strong&gt;*&lt;/strong&gt; Înmulţire&lt;br /&gt;&lt;strong&gt;/&lt;/strong&gt; Împărţire&lt;br /&gt;&lt;strong&gt;%&lt;/strong&gt; Restul împărţirii&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;int&lt;/span&gt; n,m;&lt;br /&gt;&lt;br /&gt;n= 10%3;&lt;br /&gt;m=3+2;&lt;br /&gt;&lt;span class='comentariu'&gt;//Valoarea lui n va fi 1, iar a lui m 5.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;În cazul string-urilor, operatorul &lt;strong&gt;+&lt;/strong&gt; se poate folosi pentru a uni (concatena) 2 variabile de tip string.&lt;br /&gt;&lt;br /&gt; &lt;div class='exemplu'&gt;&lt;br /&gt;concatenare = &lt;span class='caractere'&gt;“Popescu”&lt;/span&gt;+&lt;span class='caractere'&gt;”.”&lt;/span&gt;+&lt;span class='caractere'&gt;”Ion”&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class='comentariu'&gt;//Se va afişa &lt;em&gt;Popescu.Ion&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;C# recunoaşte operaţii scurte de asignare, de exemplu &lt;em&gt;valoare+=10&lt;/em&gt; va fi similară cu &lt;em&gt;valoare =valoare+10&lt;/em&gt;. &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Matematici avansate&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Pentru operaţii matematice mai complexe, C# ne oferă clasa &lt;em&gt;Math&lt;/em&gt;. Cu ajutorul acesteia putem extrage de exemplu radicalul sau logaritmul unui număr.&lt;br /&gt;&lt;br /&gt;Câteva metode ale clasei Math:&lt;br /&gt;&lt;br /&gt;&lt;span class='tip_var'&gt; int&lt;/span&gt; valoare;&lt;br /&gt;valoare = &lt;span class='clasa'&gt;Math&lt;/span&gt;.Abs(-9) &lt;span class='comentariu'&gt;//Valoarea absolută. Rezultat: -9&lt;/span&gt;&lt;br /&gt;valoare = &lt;span class='clasa'&gt;Math&lt;/span&gt;.Ceiling(9.44)&lt;span class='comentariu'&gt;//Rotunjire în sus. Rezultat: 10&lt;/span&gt;&lt;br /&gt;valoare = &lt;span class='clasa'&gt;Math&lt;/span&gt;.Floor(9.44)&lt;span class='comentariu'&gt;//Rotunjire în jos. Rezultat: 9&lt;/span&gt;&lt;br /&gt;valoare = &lt;span class='clasa'&gt;Math&lt;/span&gt;.E&lt;span class='comentariu'&gt;//Rezultat: 2,71...&lt;/span&gt;&lt;br /&gt;valoare = &lt;span class='clasa'&gt;Math&lt;/span&gt;.PI&lt;span class='comentariu'&gt;//Rezultat: 3,14...&lt;/span&gt;&lt;br /&gt;valoare = &lt;span class='clasa'&gt;Math&lt;/span&gt;.Exp(2)&lt;span class='comentariu'&gt;//&lt;strong&gt;e&lt;/strong&gt; la puterea a 2-a. Rezultat 7,38...&lt;/span&gt;&lt;br /&gt;valoare = &lt;span class='clasa'&gt;Math&lt;/span&gt;.Log(3,2)&lt;span class='comentariu'&gt;//Logaritm de 3 în baza 2. Rezultat: 1,58...&lt;/span&gt;&lt;br /&gt;valoare = &lt;span class='clasa'&gt;Math&lt;/span&gt;.Log10(4)&lt;span class='comentariu'&gt;//Logaritm în baza 10. Rezultat: 0,60...&lt;/span&gt;&lt;br /&gt;valoare = &lt;span class='clasa'&gt;Math&lt;/span&gt;.Max(4,5)&lt;span class='comentariu'&gt;//Maximul dintre 2 numere. Rezultat: 5&lt;/span&gt;&lt;br /&gt;valoare = &lt;span class='clasa'&gt;Math&lt;/span&gt;.Min(4,5)&lt;span class='comentariu'&gt;//Minimul dintre 2 numere. Rezultat: 4&lt;/span&gt;&lt;br /&gt;valoare = &lt;span class='clasa'&gt;Math&lt;/span&gt;.Pow(4,2)&lt;span class='comentariu'&gt;//4 la puterea a 2-a. Rezultat: 16&lt;/span&gt;&lt;br /&gt;valoare = &lt;span class='clasa'&gt;Math&lt;/span&gt;.Round(4.7853,2)&lt;span class='comentariu'&gt;//Rotunjirea unui număr cu virgulă la 2 zecimale. Rezultat: 4.78&lt;/span&gt;&lt;br /&gt;valoare = &lt;span class='clasa'&gt;Math&lt;/span&gt;.Sqrt(4)&lt;span class='comentariu'&gt;//Radical din 4. Rezultat: 2&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-5278763905621972519?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/5278763905621972519/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=5278763905621972519' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/5278763905621972519'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/5278763905621972519'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/03/operatii-cu-variabile.html' title='Operatii cu variabile'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-3228902025503976100</id><published>2008-03-06T10:15:00.002+02:00</published><updated>2008-03-06T10:17:51.952+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='array'/><category scheme='http://www.blogger.com/atom/ns#' term='siruri de caractere'/><title type='text'>Siruri de caractere (Arrays)</title><content type='html'>Şirurile de caractere pot stoca valori de acelaşi tip. Fiecare valoare din şir poate fi referenţiată printr-un index. Ne putem imagina un şir de caractere ca o înşiruire de date, sau ca o matrice, în funcţie de cum declarăm şirul.&lt;br /&gt;&lt;br /&gt;Toate şirurile au indexul de start egal cu 0. De exemplu dacă avem un şir cu 10 elemente, idex-ul ultimului element va fi 9 (pentru că începe de la 0).&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;span class='comentariu'&gt;// Un şir de 10 caractere&lt;/span&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;int&lt;/span&gt;[] sir= &lt;span class='tip_var'&gt;new  int&lt;/span&gt;[10];&lt;br /&gt;&lt;br /&gt;&lt;span class='comentariu'&gt;//O matrice de 2 pe 3 (un tabel cu 2 rânduri şi 3 coloane)&lt;/span&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;string&lt;/span&gt;[,] matrice= &lt;span class='tip_var'&gt;new  string&lt;/span&gt;[2,3];&lt;br /&gt;&lt;br /&gt;&lt;span class='comentariu'&gt;&lt;br /&gt;/* &lt;br /&gt;&lt;br /&gt;Cum arată valorile din şir:&lt;br /&gt;1,2,3,4,5,6,7,8,9,10&lt;br /&gt;Cum arată valorile din matrice:&lt;br /&gt;1,2,3&lt;br /&gt;4,5,6&lt;br /&gt;&lt;br /&gt;*/&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Putem observa că valorile din şir sunt întregi (int) iar cele din matrice sunt caractere (string).&lt;br /&gt;&lt;br /&gt;Pentru a modifica sau a prelua valoarea din şir procedăm astfel (index-ul porneşte de la zero):&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;int&lt;/span&gt; valoare1 = sir[5]; &lt;span class='comentariu'&gt;// Valoarea va fi 6&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;string&lt;/span&gt; valoare2 = matrice[1,3] &lt;span class='comentariu'&gt;// Valoarea va fi 3 (rândul 1, coloana 3)&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Şiruri de dimensiune variabilă&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;După cum se poate observa, şirul şi matricea de mai sus sunt de dimensiuni fixe. De exemplu, şirul acceptă maxim 10 elemente. Din fericire, în C# putem declara un şir de dimensiune variabilă folosind clasa &lt;strong&gt;ArrayList&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;br /&gt;&lt;span class='clasa'&gt;ArrayList&lt;/span&gt; sir_variabil=&lt;span class='tip_var'&gt;new&lt;/span&gt; &lt;span class='clasa'&gt;ArrayList&lt;/span&gt;();&lt;br /&gt;&lt;br /&gt;&lt;span class='comentariu'&gt;//Să adăugăm în şir&lt;/span&gt;&lt;br /&gt;sir_variabil.Add(“valoare1”);&lt;br /&gt;sir_variabil.Add(“valoare2”);&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Valorile asignate şirului variabil sunt de tip string. Pentru a putea asigna o valoare din şir unei variabile, trebuie să convertim (să transformăm) valoarea în tipul dorit, deoarece .NET nu poate şti ce valori am introdus noi în şir. Vom vedea puţin mai încolo cum putem converti tipurile de date.&lt;br /&gt;&lt;br /&gt;&lt;div class='nota'&gt;&lt;br /&gt;&lt;strong&gt;Atenţie.&lt;/strong&gt; Pentru a folosi clasa ArrayList este necesar să se specifice colecţia de clase din care face parte. Pentru aceasta trebuie să scriem la începutul paginii de cod urmatoarea linie.&lt;br /&gt;&lt;br /&gt;&lt;span class='tip_var'&gt;using&lt;/span&gt; Sytem.Collections;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-3228902025503976100?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/3228902025503976100/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=3228902025503976100' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/3228902025503976100'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/3228902025503976100'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/03/siruri-de-caractere-arrays.html' title='Siruri de caractere (Arrays)'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-9090993146300053273</id><published>2008-03-05T20:23:00.003+02:00</published><updated>2008-03-05T20:33:12.373+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='secvente speciale'/><title type='text'>Secvente speciale</title><content type='html'>La întâlnirea caracterului &lt;span style="font-weight:bold;"&gt;\&lt;/span&gt; (backslash), C# ştie că va urma o secvenţă specială. De exemplu, &lt;span style="font-weight:bold;"&gt;\n&lt;/span&gt; reprezintă o linie nouă. Cele mai folosite secvenţe speciale sunt:&lt;br /&gt;&lt;br /&gt;- &lt;span style="font-weight:bold;"&gt;\"&lt;/span&gt; ghilimele duble&lt;br /&gt;- &lt;span style="font-weight:bold;"&gt;\n&lt;/span&gt; linie nouă&lt;br /&gt;- &lt;span style="font-weight:bold;"&gt;\t&lt;/span&gt; tabulare&lt;br /&gt;- &lt;span style="font-weight:bold;"&gt;\\&lt;/span&gt; backslash&lt;br /&gt;&lt;br /&gt;În exemplul de mai jos este întâlnită o astfel de secvenţă specială&lt;br /&gt;&lt;div class="exemplu"&gt;&lt;span class="tip_var"&gt;string&lt;/span&gt; variabila_mea = &lt;span class="caractere"&gt;"Avem ghilimele duble\""&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class="comentariu"&gt;/* Valoarea variabilei va fi &lt;span style="font-style:italic;"&gt;Avem ghilimele duble"&lt;/span&gt; &lt;br /&gt;(cu ghilimele la sfârşit) */&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Se poate anula secvenţa specială dintr-o variabilă string folosind caracterul &lt;span style="font-weight:bold;"&gt;@&lt;/span&gt;. La întâlnirea acestei variabile compilatorul va ingora backslash-urile întâlnite pe linia respectivă de cod.&lt;br /&gt;&lt;br /&gt;&lt;div class="exemplu"&gt;&lt;span class="tip_var"&gt;string&lt;/span&gt; variabila_mea = &lt;span class="caractere"&gt;@"Avem backslash \"&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class="comentariu"&gt;//Se va afișa &lt;span style="font-style:italic;"&gt;Avem backslash \&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-9090993146300053273?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/9090993146300053273/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=9090993146300053273' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/9090993146300053273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/9090993146300053273'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/03/secvente-speciale.html' title='Secvente speciale'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-1488483401438053852</id><published>2008-03-04T21:03:00.007+02:00</published><updated>2008-03-05T15:08:06.907+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='variabile'/><category scheme='http://www.blogger.com/atom/ns#' term='tipuri de date'/><title type='text'>Variabile si tipuri de date</title><content type='html'>În C#, datele se stochează în variabile. Acestea pot memora numere,text, data sau timpul. Variabilele se declară specificând tipul său de date şi numele.&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;span class="comentariu"&gt;//O variabilă ce poate conţine un număr.&lt;/span&gt;&lt;br /&gt;&lt;span class="tip_var"&gt;int&lt;/span&gt; variabila1;&lt;br /&gt;&lt;span class="comentariu"&gt;//O variabilă ce poate conţine caractere&lt;/span&gt;&lt;br /&gt;&lt;span class="tip_var"&gt;string&lt;/span&gt; variabila2;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;int&lt;/span&gt; şi &lt;span style="font-weight:bold;"&gt;string&lt;/span&gt; reprezintă tipurile de date (numere întregi respectiv caractere) iar variabila1 şi variabila2 numele variabilelor. Cele mai folosite tipuri de date sunt:&lt;br /&gt;&lt;br /&gt;- &lt;span style="font-weight:bold;"&gt;byte, short&lt;/span&gt; pentru numere întregi cu o valoare mică &lt;br /&gt;- &lt;span style="font-weight:bold;"&gt;int, long&lt;/span&gt; pentru numere întregi&lt;br /&gt;- &lt;span style="font-weight:bold;"&gt;float, double, decimal&lt;/span&gt; pentru numere cu virgulă&lt;br /&gt;- &lt;span style="font-weight:bold;"&gt;char, string&lt;/span&gt; pentru un caracter respectiv mai multe caractere&lt;br /&gt;- &lt;span style="font-weight:bold;"&gt;bool&lt;/span&gt; pentru o valoare logică adevărată sau falsă&lt;br /&gt;&lt;br /&gt;La declararea variabilelor dacă acestea nu sunt iniţializate la o operaţie cu acea variabilă se produce o eroare. De aceea este bine ca tot timpul variabilele să fie iniţializate atunci când sunt declarate.&lt;br /&gt;Mai jos sunt câteva exemple de iniţializări de variabile.&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;span class="tip_var"&gt;int&lt;/span&gt; număr = 1;&lt;br /&gt;&lt;br /&gt;&lt;span class="tip_var"&gt;string&lt;/span&gt; nume = &lt;span class="caractere"&gt;"Microsoft"&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class="tip_var"&gt;char&lt;/span&gt; c = &lt;span class="caractere"&gt;'a'&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class="tip_var"&gt;bool&lt;/span&gt; var_logic = true;&lt;/div&gt;&lt;br /&gt;&lt;div class='nota'&gt;&lt;span style="font-weight:bold;"&gt;Atenție&lt;/span&gt;. Pentru valori, la variabila de tip &lt;span style="font-weight:bold;"&gt;char&lt;/span&gt; se folosesc &lt;span style="font-style:italic;"&gt;ghilimele simple&lt;/span&gt; iar pentru &lt;span style="font-weight:bold;"&gt;string&lt;/span&gt; &lt;span style="font-style:italic;"&gt;ghilimele duble&lt;/span&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-1488483401438053852?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/1488483401438053852/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=1488483401438053852' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/1488483401438053852'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/1488483401438053852'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/03/variabile-si-tipuri-de-date.html' title='Variabile si tipuri de date'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-6124806501280839827</id><published>2008-03-04T20:54:00.003+02:00</published><updated>2008-03-05T15:09:09.308+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='comentarii'/><title type='text'>Comentarii</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Comentariile&lt;/span&gt; reprezintă linii sau bucăţi din cod ce sunt ignorate de compilator. În C# comentarile sunt de 2 feluri: pe o singură linie sau pe mai multe linii de cod. Pentru primul tip de comentariu se folosesc 2 slash-uri // la începutul liniei de cod în tip ce pentru comentariile pe mai multe linii se foloseşte /* pentru începerea comentariului şi */ pentru finalul comentariului.&lt;br /&gt;&lt;div class='exemplu'&gt;&lt;span class="comentariu"&gt;// Acesta este un comentariu pe o singură linie;&lt;/span&gt;&lt;br /&gt;i=0;&lt;br /&gt;&lt;span class="comentariu"&gt;/* Acesta este un comentariu&lt;br /&gt;pe mai multe linii */&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Comentariile pe mai multe linii se pot folosi pentru a ingora o bucată de cod. &lt;br /&gt;&lt;div class='nota'&gt;Atenție. În C# linia de cod se sfârşeşte folosind operatorul ; (punct şi virgulă). De exemplu, această linie este perfect valabilă:&lt;br /&gt;i=1+2+&lt;br /&gt;3+4;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-6124806501280839827?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/6124806501280839827/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=6124806501280839827' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/6124806501280839827'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/6124806501280839827'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/03/comentarii.html' title='Comentarii'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-7333085384562139495</id><published>2008-03-04T20:38:00.003+02:00</published><updated>2008-03-04T20:44:24.203+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='introducere'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Introducere in C#</title><content type='html'>&lt;span style="font-weight:bold;"&gt;C# (C sharp)&lt;/span&gt; este un limbaj de programare ce a fost creat special pentru .NET. Sintaxa se aseamănă cu C++ sau Java, aşadar programatorii ce au mai lucrat cu aceste limbaje vor aprecia aceste asemănări. Pentru a putea creea pagini &lt;span style="font-weight:bold;"&gt;ASP .NET&lt;/span&gt; dinamice, trebuie să alegeţi un limbaj de programare dintre &lt;span style="font-weight:bold;"&gt;C#&lt;/span&gt; şi &lt;span style="font-weight:bold;"&gt;Visual Basic&lt;/span&gt;. &lt;br /&gt;&lt;br /&gt;Pe acest site veți găsi tutoriale despre bazele limbajului de programare C#.&lt;br /&gt;&lt;br /&gt;&lt;div class='nota'&gt;&lt;span style="font-weight:bold;"&gt;Atentie&lt;/span&gt;. C# face diferenţa dintre literele mari sau mici (este case sensitive). De exemplu, dacă veţi scrie &lt;span style="font-weight:bold;"&gt;For(...)&lt;/span&gt; în loc de &lt;span style="font-weight:bold;"&gt;for(...)&lt;/span&gt; compilatorul va semnala o eroare.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-7333085384562139495?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/7333085384562139495/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=7333085384562139495' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/7333085384562139495'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/7333085384562139495'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/03/introducere-in-c.html' title='Introducere in C#'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-477783691996817661</id><published>2008-03-04T19:27:00.002+02:00</published><updated>2008-03-04T20:22:43.091+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web server'/><category scheme='http://www.blogger.com/atom/ns#' term='sql server'/><category scheme='http://www.blogger.com/atom/ns#' term='web developer'/><title type='text'>Ce trebuie sa instalez?</title><content type='html'>Pe lângă un sistem de operare Windows XP sau Vista, pentru a putea creea un site ASP .NET este nevoie de:&lt;br /&gt;&lt;br /&gt; &lt;span style="font-weight:bold;"&gt; Un editor pentru creearea paginii web&lt;/span&gt;.&lt;br /&gt; &lt;br /&gt;Visual Web Developer reprezintă un program cu ajutorul căruia se pot creea cu ușurință paginile web. Acesta are o colecție de obiecte (imagini, tabele, butoane) ce se pot trage din panoul cu obiecte direct pe pagina ce urmează a fi publicată.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.microsoft.com/express/download/#webInstall"&gt;Web Developer 2008 Express Edition&lt;/a&gt;, este varianta cea mai nouă și gratis și se poate descărca de pe pagina oficială a Microsoft.&lt;br /&gt;&lt;br /&gt;Pachetul conține și .NET FRAMEWORK 3.5, ultima versiune a colecției de clase necesare pentru a putea creea paginile web folosind funcții foarte folositoare și gata implementate.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt; Baze de date&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Pentru a folosi baze de date, se poate descărca SQL Server 2005 Express impreună cu programul de management al bazei de date &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=C243A5AE-4BD1-4E3D-94B8-5A0F62BF7796&amp;displaylang=en"&gt;SQL Server Management Studio Express&lt;/a&gt;. Acesta vă oferă posibilitatea de a creea, șterge și modifica baze de date și tabele cu ușurință precum și rularea de interogări.&lt;br /&gt;&lt;br /&gt;Web Developer conține un Web Server propriu ce poate rula paginile web create.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-477783691996817661?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/477783691996817661/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=477783691996817661' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/477783691996817661'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/477783691996817661'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/03/ce-trebuie-sa-instalez.html' title='Ce trebuie sa instalez?'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4729155029744079654.post-2589467311513512349</id><published>2008-03-04T15:10:00.004+02:00</published><updated>2008-03-04T15:22:48.884+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP .NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio'/><title type='text'>Tutoriale C#, Visual Studio si ASP .NET</title><content type='html'>Bine aţi venit pe &lt;a href="http://punctnet.blogspot.com/"&gt;punctnet.blogspot.com&lt;/a&gt;. În funcţie de timpul liber, am să încerc să creez tutoriale cât mai simple pentru buna înţelegere a programării web folosind ASP .NET şi C#. Deasemenea va fi prezentat şi mediul de dezvoltare Visual Studio.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4729155029744079654-2589467311513512349?l=punctnet.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://punctnet.blogspot.com/feeds/2589467311513512349/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4729155029744079654&amp;postID=2589467311513512349' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/2589467311513512349'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4729155029744079654/posts/default/2589467311513512349'/><link rel='alternate' type='text/html' href='http://punctnet.blogspot.com/2008/03/tutoriale-c-visual-studio-i-asp-net.html' title='Tutoriale C#, Visual Studio si ASP .NET'/><author><name>George</name><uri>http://www.blogger.com/profile/01412491720142403712</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://3.bp.blogspot.com/_w-3vHIqvcOI/TNpundpFnbI/AAAAAAAACw8/CvBsAefxKrE/S220/DSC06571.JPG'/></author><thr:total>0</thr:total></entry></feed>
