︿
Top

2016年11月25日 星期五

[Entity Framework] 如何讓 Stored Procedure 與原來 Entity Framework 的運作在同一個 Transaction 裡


一. 前言


日前在撰寫 C# + Database First Entity Framework 6.x 程式時, 先呼叫 SP (該 SP 會異動資料庫), 再利用 EF 寫入其它的異動資料; 但在 SaveChanges() 時, 發生例外, 卻發現原來以 SP 異動的資料並未還原 (rollback). 覺得很怪, 於是寫了一支主控台程式, 以探究原因.
註: 為避免文章過於冗長, 本文以 SP 代表 Stored Procedure, EF 代表 Entity Framework. Tx 代表 Transacton
程式邏輯大致如下, 建議下載 github 上分享的原始程式, 實際執行看看.

using (xxEntities ctx = new xxEntities())
{
 //1.. 呼叫 SP, 並取回值
 ObjectParameter orderno = new ObjectParameter("po_order_no", typeof(String));
 ctx.usp_get_order_no(orderno);

 //2.. 新增資料, 以 EF 寫入
 //...
 ctx.SaveChanges();
}



[Git] 如何將本機目前已存在的 git 版控 C# 主控台專案, 發行到 github


一. 前言


因為本機有一個啟用 git 版控的 Entity Framework 主控台專案, 在告一段落時, 想要撰寫 blog, 同時將相關的程式碼, 上傳至 github 分享; 故有需要將儲存在本機的 git 版控, 轉換為儲存至 github.


2016年10月20日 星期四

SQL Server: 如何建立 Partition Table

一. 前言

因為客戶有一個上幾百萬筆資料的 Table, 需評估 Partition Table 的可行性, 在評估的過程中, 順便將建立 Partition Table 的過程, 記錄下來.
本文主要係以參考文件 1.. 及 2.. 作為主要的實作依據, 也謝謝參考文件所列各篇文章的作者.

整個實作過程, 包含以下幾個步驟:

1.. 建立 資料庫 及 FileGroup, 並切換至新建的資料庫
2.. 建立非分割的資料表, 以供對照之用
3.. 建立輔助函式 Function (from 參考文件 2.. 及 8..)
4.. 建立分割函式 ( Partition Function )
5.. 建立分割配置 ( Partition Scheme )
6.. 建立分割資料表/索引 及建立測試資料 (Partition Table)
7.. 驗證測試資料
8.. 新年度怎麼辦?
9.. 驗證測試資料




註: Partition Table 的功能只有 Enterprise / Developer / Evaluation 版本才有提供. 

2016年10月10日 星期一

Excel 的一些功能: (1) IF ... AND, (2) Conditional Formatting


一. 前言:


最近在準備一個證券公司專案的整測文件, 該專案主要係將 COBOL FILE 的資料, 轉到 DB. 在此狀況下, 需比對 2 個不同性質的資料來源 (一個是 COBOL FILE, 一個是 DB), 確定轉檔的資枓內容無誤, 但資料量又不少, 只能設計一些統計指標, 至少這些指標要能符合; 在這些指標符合的狀況下, 再隨機抽幾筆資料出來作比對.

因為找不到比較好的自動化比對方式, 只好用最笨的方式, 將執行結果的重要統計值, 輸入到 Excel 檔作比對. 但既然用了 Excel, 總不能還要人工去比對結果吧? 眼睛會花掉 ...
故製作了一些 Excel 檔案, 作為測試報告的文件之用.
範例文件, 請由此下載.


2016年9月13日 星期二

SQL Server: Data Compare using SSDT and Visual Studio 2015

一. 前言:

因為最近工作的需求, 有不同 DB 上 Tables 的內容比對. 故以一個簡單的環境實作, 並整理如下:

二. 環境:

(一) Visual Studio 2015: 必須安裝 SQL Server Data Tools (SSDT), 由此下載.
(二) SQL Server 2014 現有資料: 相關的 SQL Script 可參考 六. 附錄


2016年5月25日 星期三

如何在 Github 上針對各次簽入(commit) 的 code, 進行 comments 的訊息交流


前言

最近參加了 skilltree 的 ASP.NET MVC 5 實戰訓練營 的課程 (2016.-04-09 .. 2016-05-07), 講師 demo 在每週六的課程結束, 都會出作業, 請學員實作, 上傳至 Github. 講師會在 下次上課前, 在 Github 上作 Code Review, 並留下建議 (Comments).

但由於小弟對於如何在 Github 上回應講師的 Comments, 並不是很了解, 查了 Google, 也沒有找到合適的說明, 只好自己試試看. 
假設小弟的主帳號為 jasper-lai (扮演學員的角色), 另外申請了一個 polarbear-ms (扮演講師的角色) 的帳號作練習.


2016年3月8日 星期二