日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

WCF-004:WCF中也可以使用Microsoft.Practices.EnterpriseLibrary

發(fā)布時間:2024/1/17 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WCF-004:WCF中也可以使用Microsoft.Practices.EnterpriseLibrary 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在WCF服務(wù)中我一直是使用ADO.NET 實體模型來連接數(shù)據(jù)和操作數(shù)據(jù)庫的,剛開始用時覺得比較新鮮,因為linq與sql語句的基本操作都有對應(yīng)的使用方法,而且能直接獲取到數(shù)據(jù)表的模型,大多情況下還是比較好用的。不過偶爾的時候要涉及到多表關(guān)聯(lián)的復(fù)雜的sql語句的查詢,寫linq就比較麻煩了,要使用分步進(jìn)行,就是先用linq查出一個條件,賦值給一個變量,然后再將這個變量作為下一個linq的查詢條件,不大利于修改sql語句的變動。
因為本人是比較喜歡用sql語句的,即使是在使用linq時,也是現(xiàn)將sql語句寫好,然后再轉(zhuǎn)換的。所以我也會在項目中少量的使用Microsoft.Practices.EnterpriseLibrary進(jìn)行連接,直接使用sql語句增刪改查等。
Microsoft.Practices.EnterpriseLibrary生成的配置文件中的連接字符串格式和位置與ADO.NET 實體模型是一樣的,所以也便于對配置文件的維護(hù)。下面看一下在WCF服務(wù)應(yīng)用程序中如何使用。其實和前面寫過的(http://blog.csdn.net/yysyangyangyangshan/article/details/8488791)用法是一樣的,再次回顧一下吧。
首先Microsoft.Practices.EnterpriseLibrary的下載安裝就不說了,直接搜索下載,新的舊的都可以,關(guān)鍵是在配置中把版本寫對就可以了。
直接看web.config的配置

<?xml version="1.0" encoding="utf-8"?> <configuration><configSections><!--添加配置企業(yè)庫(1)--><section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings,Microsoft.Practices.EnterpriseLibrary.Data, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/></configSections><!--添加配置企業(yè)庫(2)--><dataConfiguration defaultDatabase="MyConnectionString"/><system.web><compilation debug="true" targetFramework="4.0" /></system.web><system.serviceModel><behaviors><serviceBehaviors><behavior><!-- 為避免泄漏元數(shù)據(jù)信息,請在部署前將以下值設(shè)置為 false 并刪除上面的元數(shù)據(jù)終結(jié)點 --><serviceMetadata httpGetEnabled="true"/><!-- 要接收故障異常詳細(xì)信息以進(jìn)行調(diào)試,請將以下值設(shè)置為 true。在部署前設(shè)置為 false 以避免泄漏異常信息 --><serviceDebug includeExceptionDetailInFaults="false"/></behavior></serviceBehaviors></behaviors><serviceHostingEnvironment multipleSiteBindingsEnabled="true" /></system.serviceModel><system.webServer><modules runAllManagedModulesForAllRequests="true"/></system.webServer><connectionStrings><add name="MyConnectionString" connectionString="DATA SOURCE=數(shù)據(jù)庫名;Persist Security Info=True;User ID=用戶名;Password=密碼;Unicode=True" providerName="System.Data.OracleClient"/></connectionStrings></configuration>

其余用法都一樣
執(zhí)行的方法:

public class OracleSqlHelper{private static Database db = null;public static DataSet GetDataTable(string commandText){try{DataSet resultDataSet = null;db = DatabaseFactory.CreateDatabase();//建立數(shù)據(jù)庫連接resultDataSet = db.ExecuteDataSet(CommandType.Text, commandText);//執(zhí)行return resultDataSet;}catch (Exception ex){return null;}}public static DataSet GetDataTableByProcedure(string commandText){try{DataSet resultDataSet = null;db = DatabaseFactory.CreateDatabase();//建立數(shù)據(jù)庫連接resultDataSet = db.ExecuteDataSet(CommandType.StoredProcedure, commandText);//執(zhí)行存儲過程return resultDataSet;}catch (Exception e){return null;}}}

你的調(diào)用方法:

public class OracleDataProvider {public static DataTable TestReadTable(string id){DataTable dataTable = null;try{string commandText = "select tu.name from tabUser tu";DataSet resultTable = OracleSqlHelper.GetDataTable(commandText);int table = resultTable != null ? resultTable.Tables.Count : 0;if (table > 0){dataTable = resultTable.Tables[0];}}catch (Exception e){throw e;}return dataTable;} }

代碼下載

轉(zhuǎn)載于:https://blog.51cto.com/yangyoushan/1315546

總結(jié)

以上是生活随笔為你收集整理的WCF-004:WCF中也可以使用Microsoft.Practices.EnterpriseLibrary的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。