1. 程式人生 > >LINQ學習實戰:檢視LINQ生成SQL語句的幾種方法

LINQ學習實戰:檢視LINQ生成SQL語句的幾種方法

方式一:DataContext類的Log屬性與.GetCommand方法

DataContext.Log = Console.Out;  //控制檯的輸出視窗顯示

DataContext.GetCommand(LinqQuery).CommandText;  //返回一個查詢字串

方式二:Linq to SQL Debug Visualizer
**作者Scott大牛介紹:http://weblogs.asp.net/scottgu/archive/2007/07/31/linq-to-sql-debug-visualizer.aspx
可以在 Debug 時,將 Linq to SQL 會執行的 SQL 語法顯示出來,
並且可以顯示執行後取得的資料,對於使用Linq to SQL 追蹤與除錯很有幫助
**安裝方式
1.請先下載,下載位置

http://www.scottgu.com/blogposts/linqquery/SqlServerQueryVisualizer.zip
2.解壓後,請將 /bin/Debug/SqlServerQueryVisualizer.dll,Copy 至 /Program Files/Microsoft Visual Studio 10.0/Common7/Packages/Debugger/Visualizers
3.重新開啟 Visual Studio 2010
4.完成

**使用方式:
 在 debug 時,將滑鼠移到 Linq to SQL 的 Query 上,
對放大鏡圖示點下去,就會顯示 Linq to SQL Query語法以及實際會執行的SQL語法,
安裝跟使用都很簡單,但在專案Debug時很有幫助

由於Console.Out方法在ASP.NET程式不起作用.使用這個工具類,asp.net可以選擇將Log資訊直接傳送到Debug的輸出視窗.

方式五:ASP.net 專案下
DataContext.Log是System.IO.TextWriter型別,所以你可以用以下的方法來做.

但以上方法有個缺點,就是需要在每個實現的方法中都寫這麼多程式碼.使用起來太不方便.最好封裝一個類來使用

相關推薦

LINQ學習實戰檢視LINQ生成SQL語句方法

方式一:DataContext類的Log屬性與.GetCommand方法 DataContext.Log = Console.Out;  //控制檯的輸出視窗顯示 DataContext.GetCommand(LinqQuery).CommandText;  //返回一個查詢

學習筆記Android裡JSON解析的方法

一、解析方法:  Android解析json有很多種方法,下面介紹三種方法:Android自帶的org.json解析、Gson解析和Jackson解析。 優缺點對比:  Android自帶的方法有點像xml的dom解析,遍歷之後根據需要的key值去取資

Java註解專案實戰即模擬Hibenernate生成sql語句

專案結構: 建立表單的註解:(注意與屬性註解的作用域的不同) package HibernateSimulate; import java.lang.annotation.ElementType; import java.lang.annotation.Retentio

Python爬蟲系列判斷目標網頁編碼的方法

qpi data- tps 分享 運行 ofo html nbsp 來看 在爬取網頁內容時,了解目標網站所用編碼是非常重要的,本文介紹幾種常用的方法,並使用幾個網站進行簡單測試。 代碼運行結果: 從不同國家的幾個網站測試結果來看,utf8使用的較多(對於純英文網站,用什

PHP生成隨機數的方法

rand dst ret fun ech end tran spa bstr 第一種方法用mt_rand() function GetRandStr($length){ $str=‘abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP

css盒子垂直水平居中的方法

方法1:寬度和高度已知的。 思路: 給父元素相對定位 給子元素絕對定位 left: 50%;top: 50%; margin-left: 負的寬度一半。 margin-top: 負的高度一半; <!DOCTYPE html> <html> <

C#(.net)中的一次連線資料庫執行多條sql語句(兩方法)

第一種方法: string str="server=.;uid=sa;pwd=111111;database=text_db";//連線字串 SqlConnection SCON = null;//連線物件 SqlCommand SCom=new SqlCommand();/

用python生成隨機數的方法

  今天學習了用python生成模擬資料的一些基本方法和技巧,寫成部落格和大家分享一下。      本篇部落格主要講解如何從給定引數的的正態分佈/均勻分佈中生成隨機數以及如何以給定概率從數字列表抽取某數

檢視執行緒數的方法

1 top top -H -p 如下 如果是檢視系統中總的執行緒數,直接用top -H選項 2 pstree pstreee -p pid |wc -l 如果是檢視系統中總的執行緒數,用pstree -p |wc -l 3 通過/pro

給apk生成MD5密碼方法

[java] view plaincopyC:\Program Files\Java\jdk1.6.0_10\bin>keytool -list -alias gao.keystore -keystor  e gao.keystore  輸入keystore密碼:  gao.keystore, 201

JS生成uuid的方法

需要注意的是宣告的接收變數命名時不能使用"uuid"不然會報錯----比如 var uuid = uuid(); 全域性唯一識別符號(GUID,Globally Unique Identifier)也稱作 UUID(Universally Unique ID

PLSQL執行sql方法

plsql很方便我們執行sql。下面就簡單介紹我常用的幾種(當然每次svn的分支也可以ant指令碼自動執行某個檔案下的所以sql檔案) 首先開啟plsq的命令視窗 1)執行sql檔案(可以把需要執行的sql放一個檔案中) 輸入 @''   在單引號中輸入sql檔案的路徑既可

Linux 檢視ip 埠 程序的方法

檢視iP地址: 1   ifconfig    或者 ifconfig -a 2 、sbin/ip add list    3 .cat /etc/hosts 檢視埠命令 1.netstat -anp|grep 埠號 檢視程序 1.在對應的路徑下  輸入命令

【Unity教程】UGUI中如何動態生成精靈的方法

本篇文章主要說sprite.Load()方法是如何新建精靈的 ---1.2D精靈物體的建立 這幾行程式碼是建立2D精靈的主要程式碼,這幾個程式碼都在start()函式中         //Transform EGO = Resources.Load("EmptyGO"

檢視LINQ生成SQL語句方法

原文如下: http://hi.baidu.com/king%B3%CC%D0%F2%C8%CB%C9%FA/blog/item/9d2696f03c9e05ca7831aa79.html   記錄LINQ生成的SQL語句是常用的除錯方式,而且能根據需要來優化LINQ生成

MySQL學習筆記循環生成5萬行id連續的數據

comm host RoCE pan spa $$ In () sele # ---- mysql循環生成5萬行id連續的數據 ---- /* id 1 2 3 4 …… */ CREATE TABLE tb( id INT(11) NOT NULL AUT

分享《機器學習實戰基於Scikit-Learn和TensorFlow》高清中英文PDF+原始碼

下載:https://pan.baidu.com/s/1kNN4tDt58ckFoD_OWH5sGw 更多資料分享:http://blog.51cto.com/3215120 《機器學習實戰:基於Scikit-Learn和TensorFlow》高清中文版PDF+高清英文版PDF+原始碼 高清中文版PDF

分享《機器學習實戰基於Scikit-Learn和TensorFlow》高清中英文PDF+源代碼

ESS alt mark 構建 image 機器學習實戰 dff com 化學 下載:https://pan.baidu.com/s/1kNN4tDt58ckFoD_OWH5sGw 更多資料分享:http://blog.51cto.com/3215120 《機器學習實戰:基

小程式學習記錄讀取discuz生成的json資料

  在discuz後臺資料庫中建表,testjson,並輸入兩條記錄: testjson.php: <?php if(!defined('IN_DISCUZ')) { exit('Access Denied'); } header("Content-Typ

機器學習實戰智慧製造質量預測

一、資料清洗 注意:pandas函式使用後一般是不對原表起作用的,要重新賦值 對dataframe來說,bool運算any()、all(),預設沿axis=0反向,即沿著列 初步清洗後從8209列到3074列 1.初步清洗 去除重複列,注意可能會跨幾十列重合的,需要遍歷同一個工序