# 開發工具基礎分享-LINQPad 8
---
## 工具下載
----
下載網址 https://www.linqpad.net/Download.aspx

----
支援離線下載

---
## 簡單介紹 LINQad
----
### LINQPad 介面

----
### LINQPad 是什麼
* 一款基於 .NET Framework 和 .NET Core 的開發工具
* LINQPad 5: 支援 .NET Framework 4.7~4.8
* LINQPad 8: 支援 .NET Core 3.1~9
* 同時支援 **macOS** 和 **Windows**
* 一個可以簡單實作LINQ與資料庫查詢的工具
* 常使用來當作學習與測試C#的工具
---
## 為何使用 LINQad
----
### 解決腳本和程式片段管理問題
* 在開發或管理範例程式時,使用 Visual Studio 建立範例程式專案過程複雜且專案散落難以維護
* 範例程式可能幾行,但在啟動專案時又要編譯非常慢
* 可以獨立連接第三方套件並進行測試
* 可以與測試框架整合
* 分享程式碼變得容易
----
### 視覺化輸出結果
* LINQPad 有好用的 Dump() 方法可以使用
* 輸出格式多樣
* 可以輸入結構語法並加上高光
* 可以輸出表單清單
* 可以建立UI
----
### 好用的程式碼測試工具
* 有著貼上就可以直接執行的優勢
* 提供許多第三方測試工具和測試框架
* ILSpy: 支援反組義工具
* xUnit: 支援單元測試框架
* Benchmark: 支援效能測試工具
----
### 可以輕鬆分享程式
* 支援程式碼上傳功能
* 產生網址讓其他人下載程式
* 上傳程式碼需要注意不能包含敏感資料
* 支援密碼管理員功能
* 將密碼儲存於本機,只透過變數名稱標示密碼
---
## 功能介紹
----
### Query 導覽列
----

* 執行查詢(F5)
* 暫停查詢
* 停止查詢
* Debug模式(出現未處理異常)(拋出異常)
----
* 結果顯示(Rich Text)(DataGrid)


----
* 語言選擇(C#/VB/F#/SQL)

* .NET(3.1~10 preview)

----
* Connection(選擇連線的資料庫)

----
### Query 基本功能
----
* 格式化程式碼

* 建立/使用Snippet

----
* 各種管理工具

* Additional References 加入關聯
* Nuget Package Manager Nuget套件管理員
* Namespace Imports 命名空間管理
----
### 資料庫基本功能
----

----

----
### 檔案管理功能
----
* Query Tab

----
* My Queries: 儲存Ouery的地方
* My Extensions.linq: 全域擴充方法
----
* Sample Tab

---
## 進階功能
----
### 上傳程式碼

----

https://share.linqpad.net/rvoaikaq.linq
----
### 管理使用者密碼

----

----

----
### 建立單元測試
----

----

----
### 建立效能測試
----

----

----
還有許多酷酷的東西在 LINQPad Turtorial & Reference 中
---
## Q&A
{"title":"開發工具基礎分享-LINQPad 8","slideOptions":"{\"transition\":\"fade\",\"center\":true}","contributors":"[{\"id\":\"0388dcb1-b343-47fc-a1a0-c597bd452e33\",\"add\":3524,\"del\":504}]","description":"下載網址 https://www.linqpad.net/Download.aspx"}