Browse by Tags

Hacking樂無窮:修正Dapper+ODP.NET無法寫入Unicode問題
歷經一段時間摸索歷練,確立「新増修改用EF/ORM,查詢一律用Dapper」的最高指導原則,Dapper的簡潔、效能與彈性無可挑剔,一切看似完美,直到我膝蓋中了一箭… 無意間發現,使用Dapper+ODP.NET無法寫入Unicode字元 跟Oracle Unicode問題奮戰 超過10年 ,以為妖孽已被降伏,用OracleDbType.NVarChar2應該就萬無一失,甚至要在CommandText中用N'…'也 不是問題 ,萬萬沒想到Oracle Unicode問題今天又跑出來咬我屁股...
Posted 21 August 2016 09:56 PMJeffrey | with no comments 4,795
Filed under: , ,
使用Oracle資料表保存GUID屬性
大家都知道我隸屬 GUID PK幫 .NET分舵,最近寫了個小模組,Model理所當然地使用GUID當作Primary Key,由於想同時支援SQL Server跟Oracle,第一次挑戰SQL跟Oracle共用Model。先前的GUID PK經驗都在SQL,SQL有 Uniqueidentifier型別 ,跟C#端的Guid型別能整到天衣無縫;同樣的情場搬到Oracle,就需要動點腦筋解決。 歷經一番摸索,心得如下: 該用什麼型別? Oracle沒有Uniqueidentifier可用,我心中的兩個選項是CHAR...
Posted 20 July 2016 06:17 AMJeffrey | with no comments 3,704
Filed under: ,
Dapper筆記:列舉轉VARCHAR研究
一個用資料表保存C# Model的常見問題,列舉型別屬性該怎麼處理? 例如有個BlogUser資料物件,包含Id、Name及Role三個屬性,其中Role是列舉,包含Admin、Editor、Blogger、Reader等項目。保存BlogUser的資料表設計如下,Role欄位定義為VARCHAR(8),目標為直接保存"Admin"、"Blogger"等字串內容,以期在SQL可使用WHERE Role = 'Blogger'進行篩選。 CREATE...
Posted 18 July 2016 09:46 PMJeffrey | with no comments 3,286
Filed under:
Dapper小技巧:以資料表保存集合物件JSON
專案常遇到的需求:為指定資料保留修改歷程,以備稽核檢查或追查責任之用,使用機率不高且無統計或隨興查詢需求,不值得另開資料表。此時我偏好的做法是定義成List<HistoryRecord>,在資料表開一個NVARCHAR(MAX)保存其JSON內容,調閱時讀取JSON反序列化還原內容,足以滿足規格所需。 用個實例說明,假設資料物件定義如下: public class HistoryRecord { public DateTime Time { get; set; } public string...
Posted 18 July 2016 12:57 AMJeffrey | with no comments 3,661
Filed under:
Dapper出現sql_variant is incompatible with ntext
有個古老資料庫,裡面還有NTEXT型別欄位(SQL 2005加入NVARCHAR(MAX)後,應該沒人想用TEXT/NTEXT了),用 Dapper 執行一段SQL更新NTEXT欄位,發生古怪錯誤。 指令如下: cn.Execute("UPDATE SomeTable SET NTextField = @data WHERE Id = 1", new { data = "…" }); 錯誤訊息為:sql_variant is incompatible with...
Posted 13 May 2016 08:05 AMJeffrey | with no comments 2,216
Filed under: ,
短小精悍的.NET ORM神器 -- Dapper
應該有很多人像我一樣,對LINQ的依賴已經到達 "LINQ or Die!"(不LINQ,吾寧死) 的地步,到了需要存取DB的場合,打死也不想再走ADO.NET + DataTable、DataRow的回頭路。不過,在專案引用EntityFramework或其他ORM解決方案(NHibernation、SubSonic...),固然嚴謹紮實,卻也多出額外工作--要依照Schema在專案定義Entity物件、資料庫變更時要記得同步更新Entity定義,遇到多TABLE JOIN查詢得另外宣告自訂類別承接查詢結果...
Posted 15 May 2014 06:30 AMJeffrey | 7 comment(s) 48,002
Filed under: ,

搜尋

Go

<February 2017>
SunMonTueWedThuFriSat
2930311234
567891011
12131415161718
19202122232425
2627281234
567891011
 
RSS
創用 CC 授權條款
【廣告】
twMVC
最新回應

Tags 分類檢視
關於作者

一個醉心技術又酷愛分享的Coding魔人,十年的IT職場生涯,寫過系統、管過專案, 也帶過團隊,最後還是無怨無悔地選擇了技術鑽研這條路,近年來則以做一個"有為的中年人"自許。

文章典藏
其他功能

這個部落格


Syndication