<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>ADO.NET</title>
        <link>http://blogs.ugidotnet.org/soldano/category/ADO.NET.aspx</link>
        <description>ADO.NET</description>
        <language>it-IT</language>
        <copyright>Andrea SOLDANO</copyright>
        <generator>Subtext Version 2.6.0.0</generator>
        <item>
            <title>DB Object: Examples for a WebApplication</title>
            <link>http://blogs.ugidotnet.org/soldano/archive/2007/07/23/db-object-examples-for-a-webapplication.aspx</link>
            <description>L'oggetto che potete scaricare nella sezione downloads non è aggiornatissimo, l'ho scritto nel 2001. Prima o poi troverò il tempo per aggiornarlo. Per le applicazioni scritte con asp.net 1.1 può essere molto utile.Di seguito riporto alcuni esempi di utilizzo:Aggiungete nel file di configurazione il seguente codice:&amp;lt;appSettings&amp;gt;  &amp;lt;add key="ConnectionString" value="Integrated Security=SSPI;Initial Catalog=Northwind;Data Source=."/&amp;gt; &amp;lt;/appSettings&amp;gt;Ecco la pagina:&amp;lt;%@ Page Language="VB" %&amp;gt;&amp;lt;%@ Import Namespace="Esamatic.Database" %&amp;gt;&amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&amp;gt;&amp;lt;script runat="server"&amp;gt;    Protected Sub btnOpenConnection_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnOpenConnection.Click        'Connection open using ConnetionString retrived from web.config AppSetting         DB.OpenDB()        Response.Write("Connection Open using ConnetionString retrived from web.config AppSetting .")        DB.CloseDB()        Response.Write("Connection Close")    End Sub    Protected Sub btnOpenConnection1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnOpenConnection1.Click        'Connection open setting a ConnectionString        DB.ConnectionString = "Integrated Security=SSPI;Initial Catalog=Northwind;Data Source=."        DB.OpenDB()        Response.Write("Connection Open setting a ConnectionString.")        DB.CloseDB()        Response.Write("Connection Close")    End Sub    Protected Sub btnOpenConnection2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnOpenConnection2.Click        'Connection open setting a SQLConnection object        Dim con As New System.Data.SqlClient.SqlConnection("Integrated Security=SSPI;Initial Catalog=Northwind;Data Source=.")        DB.Connessione = con        DB.OpenDB()        Response.Write("Connection open setting a SQLConnection object.")        DB.CloseDB()        Response.Write("Connection Close")    End Sub    Protected Sub btnRetriveDataset_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnRetriveDataset.Click        'Retrive data into a DataSet and bind them to a GridView        gw.DataSource = DB.GetDataset("Select * from Customers", "Customers").Tables(0)        gw.DataBind()    End Sub    Protected Sub btnExecuteScalar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnExecuteScalar.Click        'execute a command using ExecuteScalar        DB.OpenDB()        Response.Write("Customers count: " &amp;amp; DB.CreateCommand("SELECT count(*) From Customers").ExecuteScalar())        DB.CloseDB()    End Sub    Protected Sub btnExecuteDataReader_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnExecuteDataReader.Click        'retrive a datareader        DB.OpenDB()        Dim dr As System.Data.IDataReader = DB.CreateCommand("SELECT top 2 * From Customers").ExecuteReader()        While dr.Read            Response.Write(dr(0) &amp;amp; "&amp;lt;br/&amp;gt;")        End While        DB.CloseDB()    End Sub    Protected Sub btnExecuteCommandWithParameters_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnExecuteCommandWithParameters.Click        DB.OpenDB()        Dim cmd As System.Data.IDbCommand = DB.CreateCommand("SELECT * From Customers where CustomerID = " &amp;amp; DB.CreateQueryParameterName("@CustomerID"))        cmd.Parameters.Add(DB.CreateParameter(cmd, "CustomerID", System.Data.DbType.String, "ALFKI"))        Dim dr As System.Data.IDataReader = cmd.ExecuteReader()        While dr.Read            Response.Write(dr(0) &amp;amp; "&amp;lt;br/&amp;gt;")        End While        DB.CloseDB()    End Sub    &amp;lt;/script&amp;gt;&amp;lt;html xmlns="http://www.w3.org/1999/xhtml"&amp;gt;&amp;lt;head runat="server"&amp;gt;    &amp;lt;title&amp;gt;Untitled Page&amp;lt;/title&amp;gt;&amp;lt;/head&amp;gt;&amp;lt;body&amp;gt;    &amp;lt;form id="form1" runat="server"&amp;gt;    &amp;lt;div&amp;gt;        &amp;lt;asp:Button ID="btnOpenConnection" runat="server" Text="Open Connection using web.config information." /&amp;gt;        &amp;lt;asp:Button ID="btnOpenConnection1" runat="server" Text="Open Connection using setting a connection string." /&amp;gt;        &amp;lt;asp:Button ID="btnOpenConnection2" runat="server" Text="Open Connection setting a connection object." /&amp;gt;        &amp;lt;hr /&amp;gt;        &amp;lt;asp:Button ID="btnRetriveDataset" runat="server" Text="Retrive a dataset." /&amp;gt;        &amp;lt;asp:GridView ID="gw" runat="server" EnableViewState="false"&amp;gt;        &amp;lt;/asp:GridView&amp;gt;        &amp;lt;asp:Button ID="btnExecuteScalar" runat="server" Text="Execute a scalar command" /&amp;gt;        &amp;lt;asp:Button ID="btnExecuteDataReader" runat="server" Text="Execute a DataReader" /&amp;gt;        &amp;lt;asp:Button ID="btnExecuteCommandWithParameters" runat="server" Text="Execute a Command With Parameters" /&amp;gt;        &amp;lt;/div&amp;gt;    &amp;lt;/form&amp;gt;&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt; &lt;img src="http://blogs.ugidotnet.org/soldano/aggbug/91606.aspx" width="1" height="1" /&gt;</description>
            <guid>http://blogs.ugidotnet.org/soldano/archive/2007/07/23/db-object-examples-for-a-webapplication.aspx</guid>
            <pubDate>Mon, 23 Jul 2007 13:23:00 GMT</pubDate>
            <comments>http://blogs.ugidotnet.org/soldano/archive/2007/07/23/db-object-examples-for-a-webapplication.aspx#feedback</comments>
            <slash:comments>4</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/soldano/comments/commentRss/91606.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/soldano/services/trackbacks/91606.aspx</trackback:ping>
        </item>
        <item>
            <title>DB Object</title>
            <link>http://blogs.ugidotnet.org/soldano/archive/2007/07/23/db-object.aspx</link>
            <description>Qualche giorno fa ho pubblicato il codice sorgente dell'oggetto DB, un componente che semplifica la comunicazione con i db.Basta aggiungere la referenza all'Assembly e importatre il namespace Esamatic.Database.Un esempio: con la sintassi DB.GetDatSet("Statement Sql") è possibile recuperare un dataset.Per configurare la connessione al db consiglio di aggiungere la connectionString nel file di Configurazione nella sezione AppSettings, così: &amp;lt;appSettings&amp;gt;  &amp;lt;add key="ConnectionString" value="Data Source=DBName;Initial Catalog=Database;User Id=NomeUtente;Password=password;"/&amp;gt; &amp;lt;/appSettings&amp;gt; &lt;img src="http://blogs.ugidotnet.org/soldano/aggbug/91605.aspx" width="1" height="1" /&gt;</description>
            <guid>http://blogs.ugidotnet.org/soldano/archive/2007/07/23/db-object.aspx</guid>
            <pubDate>Mon, 23 Jul 2007 13:15:00 GMT</pubDate>
            <comments>http://blogs.ugidotnet.org/soldano/archive/2007/07/23/db-object.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/soldano/comments/commentRss/91605.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/soldano/services/trackbacks/91605.aspx</trackback:ping>
        </item>
        <item>
            <title>Writing a Data Provider Indipendent application</title>
            <link>http://blogs.ugidotnet.org/soldano/archive/2007/07/19/writing-a-data-provider-indipendent-application.aspx</link>
            <description>Dalla versione 2.0 del Framework, Ado.Net è stato arricchito con alcune classi di Factory che permettono la scrittura di un'applicazione "provider indipendent". Non è più necessario istanziare oggetti castati su un determinato Data Provider. E' possibile utilizzare oggetti generici tipo DBConnection anzichè l'omonio SqlConnection del data provider SqlClient.I nuovi oggetti generici sono tutti raggruppati sotto il namespace System.Data.Common; ecco alcuni fra questi oggetti:DBConnection,DBTransaction,DBCommand,DBDataAdapter ...Per istanziare questi oggetti in modo corretto bisogna fare riferimento all'oggettto DBProviderFactory e ai suoi metodi: CreateCommand,CreateConnection,CreateDataAdapter ...L'istanza dell'oggetto DBProviderFactory viene creata dal metodo GetFactory della classe DBProviderFactories.Ecco un esempio di codice scritto in VB.NET:Imports System.Data.CommonImports System.Configuration ......Sub TestConnection        Dim fact As DbProviderFactory = DbProviderFactories.GetFactory(ConfigurationManager.ConnectionStrings("MyDB").ProviderName)        Dim con As DbConnection = fact.CreateConnection        con.ConnectionString = ConfigurationManager.ConnectionStrings("MyDB").ConnectionString        Using con            con.Open()            MessageBox.Show("Connessione aperta!")        End UsingEnd SubL'esempio sopra riportato fa riferimento alla nuova sezione del file di configurazione "ConnectionStrings", usata per definire le stringhe di connessione dell'applicazione, ecco un'esempio: &amp;lt;connectionStrings&amp;gt;     &amp;lt;add name="MyDB" connectionString="DataSource=localhost; Initial Catalog=TestDB;Integrated Security=true" providerName="System.Data.Sql"/&amp;gt; &amp;lt;/connectionStrings&amp;gt;A runtime è possibile leggere le informazioni dalla sezione "ConnectionStrings" del file di configurazione utilizzando l'oggetto ConfigurationManager sotto il namespace System.Configuration (verificate di aver referenziato l'assembly System.Configuration.dll)ConfigurationManager.ConnectionStrings("Nome").ConnectionString.ToString() &lt;img src="http://blogs.ugidotnet.org/soldano/aggbug/91604.aspx" width="1" height="1" /&gt;</description>
            <guid>http://blogs.ugidotnet.org/soldano/archive/2007/07/19/writing-a-data-provider-indipendent-application.aspx</guid>
            <pubDate>Thu, 19 Jul 2007 12:45:00 GMT</pubDate>
            <comments>http://blogs.ugidotnet.org/soldano/archive/2007/07/19/writing-a-data-provider-indipendent-application.aspx#feedback</comments>
            <slash:comments>7</slash:comments>
            <wfw:commentRss>http://blogs.ugidotnet.org/soldano/comments/commentRss/91604.aspx</wfw:commentRss>
            <trackback:ping>http://blogs.ugidotnet.org/soldano/services/trackbacks/91604.aspx</trackback:ping>
        </item>
    </channel>
</rss>