配置ADO.NET類文件連接優(yōu)化
在向大家詳細(xì)介紹ADO.NET類文件之前,首先讓大家了解下ADO.NET類文件,ADO.NET類文件還是比較常用的,于是我研究了一下ADO.NET類文件,在這里拿出來和大家分享一下,希望對大家有用。。
使用連接
高性能的應(yīng)用程序保持使用最少次數(shù)的數(shù)據(jù)源的連接,也利用了類似連接池的性能增強技術(shù)。下面的技巧幫你使用ADO.NET類文件時獲得更好的性能。 連接池 SQL Server、OLE DB和.NET框架組件數(shù)據(jù)提供程序隱性為ODBC提供了連接池。你可以在連接字符串中指定不同的屬性控制連接池的行為。
用DataAdapter優(yōu)化連接
數(shù)據(jù)適配器的Fill和Update方法自動地為相關(guān)的命令屬性打開特定的連接(如果它被關(guān)閉的話)。如果ADO.NET類文件或Update方法打開了連接,F(xiàn)ill或Update將在操作完成時關(guān)閉它。為了提高性能,只在必要時保持?jǐn)?shù)據(jù)庫連接打開,同時為多個操作減少打開和關(guān)閉連接的次數(shù)。 #t#
我們推薦如果你只執(zhí)行單個的Fill或Update方法調(diào)用,你應(yīng)該允許Fill或Update隱式打開和關(guān)閉連接。如果大量調(diào)用Fill或者Update,我們推薦顯式打開,進(jìn)行Fill或Update調(diào)用,然后顯式關(guān)閉連接。
此外執(zhí)行事務(wù)時,ADO.NET類文件在開始事務(wù)前明確地打開連接,在完成事務(wù)后明確地關(guān)閉連接。例如:
- PublicSubRunSqlTransaction(daAsSqlDataAdapter,
- myConnectionAsSqlConnection,dsAsDataSet)
- myConnection.Open()
- DimmyTransAsSqlTransaction=myConnection.BeginTransaction()
- myCommand.Transaction=myTrans
- Try
- da.Update(ds)
- myTrans.Commit()
- Console.WriteLine("Updatesuccessful.")
- CatcheAsException
- Try
- myTrans.Rollback()
- CatchexAsSqlException
- IfNotmyTrans.ConnectionIsNothingThen
- Console.WriteLine("Anexceptionoftype"
- &ex.GetType().ToString()&_
- "wasencounteredwhileattemptingtorollbackthetransaction.")
- EndIf
- EndTry
- Console.WriteLine("Anexceptionoftype
- "&e.GetType().ToString()&"wasencountered.")
- Console.WriteLine("Updatefailed.")
- EndTry
- myConnection.Close()
- EndSub