in

Darkthread

黑暗執行緒
All Tags » .NET (RSS)

Browse by Tags

  • 筆記:C# 6.0 自動實作屬性初始化與運算式主體定義

    專案裡有個在父類別宣告 virtual List<string> MyProp { get; } = new List<string>(); ,接著在子類別 override MyProp, Visual Studio 2017 自動帶出 List<string> MyProp => base.MyProp; 。(術語為 Expression Body Definition 運算式主體定義) 子類別要傳回 "Prod1","Prod2" ,我差一點就接改成 List<string> MyProp ...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 07-29-2017
  • COALESCE 發生字元設定不符合錯誤

    同事報案,Dapper 查詢 ORACLE 時使用 COALESCE() 遇到 ORA-12704: character set mismatch(字元設定不符) 錯誤。 我用以下程式成功重現問題:(jefftest2.t 欄位為 NVARCHAR2) static void Main( string [] args) { using (var cn = new OracleConnection(csStr)) { var list = cn.Query( "select 1 from jefftest2 where coalesce(t, :text) like '%'"...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 07-18-2017
  • CODE-使用 C# 批次列印 PDF 檔案

    專案遇到批次列印 PDF 檔需求。 Acrobat Reader 或 Foxit Reader 等常用 PDF 軟體本身就具備傳參數直接列印功能,例如 Acrobat Reader 直接列印 PDF 之語法為:AcroRd32.exe /p /h "pdf路徑" "印表機名稱"(印表機名稱省略時由預設印表機輸出) 基於以上資訊,最直覺的做法是找出 Acrobat Reader EXE 檔(AcroRd32.exe)路徑,在 .NET 程式透過 Process.Start() 傳入 PDF 路徑及 /p /h 參數呼叫 Acrobat Reader 列印檔案...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 07-14-2017
  • CODE - 數字轉英文 C# 函式庫

    專案遇上數字轉成英文的需求,例如:1234 需轉為 one thousand two hundred thirty four。 網路上有許多解決方案,程式範例、現成函式庫都有,選擇眾多之下,透過 NuGet 即裝即用才是王道。我找到一個,在 NuGet 搜尋 NUT,第一筆 Nut, Number To Text Converter & Money To Text Converter: 程式為 Open Source, 使用說明與原始碼在 Github 上: https://github.com/emrahyumuk/NUT-number-to-text 。使用說明略嫌簡略,「Use the...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 06-30-2017
  • 筆記-使用 Dns.GetHostEntry 解析 IP 位址

    某排程使用以下程式碼產生 IEndPoint 以建立 Socket: IPEndPoint pEndPoint = new IPEndPoint(Dns.GetHostEntry(remoteHost).AddressList[0], remotePort); 其中用了 Dns.GetHostEntry(),好處是不管 remoteHost 傳入的是主機名稱還是 IP,一律可轉成 IPAddress。 排程在正式及測試環境運作多時,今天將程式移到另一網段機器上執行,remoteHost 為 IP 位址(假設為 192.168.1.1),與原本設定相同,確認新主機與 192.168.1.1 間網路暢通...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 06-21-2017
  • CSV 轉換利器-ServiceStack.Text

    做專案免不了遇到匯出或讀取 CSV 的需求,將物件轉成逗號分隔字串看似小菜一碟,用 C# 串字串也能搞定,但魔鬼在細節裡:字串值如包含逗號就要用雙引號包夾,遇到雙引號要置換成兩個雙引號,如果字串內容有換行符號更是讀取識別時的一大挑戰… 不管是匯出或解析 CSV 都得費不少力氣。最近發現一個處理 CSV 的強大元件-ServiceStack.Text 的 CsvSerializer! ServiceStack 是一套用於快速打造 SOA 服務的 Framework 工具組(可取代 WCF、WebAPI),強調輕巧、快速。 ServiceStack.Text 則是其中處理 JSON、CSV、JSV...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 05-12-2017
  • 使用 WebClient FTP 上傳檔案發生 553 錯誤

    在 .NET 要 FTP 上傳檔案,最精簡有效的做法莫過於 使用 WebClient ,例如: using System; using System.IO; using System.Net; public class CSharpLab { public static void Test() { string userName = "ftpAccount" ; string password = "ftpPassword" ; string uploadUrl = "ftp://myFtpServerHost/someFolder/test.txt"...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 05-02-2017
  • MS OracleClient 改用 ODP.NET 之數字型別差異

    System.Data.OracleClient 被微軟宣告為 過時不建議使用 ,是你知道我知道連獨眼龍都知道的事,硬要繼續用甚至會有 效能懲罰 。所以在維護舊專案時,看到還在用 System.Data.OracleClient 的程式,我都會順手換成 Managed ODP.NET 。(若為 .NET 3.5 平台則只能用 Unmanaged ODP.NET) 近日踩到小鐵釘一根。 如下圖,程式原本使用 System.Data.OracleClient,執行正常: 改 using Oracle.ManagedDataAccess.Client 換用 Managed ODP.NET,出現型別轉換錯誤...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 04-20-2017
  • OracleParameter 型別不符導致 ORA-03111 通訊中斷錯誤

    記錄在 Oracle 遇到的古怪錯誤。 Oracle Server 版本 10.2.0.4 64bit,Client 端用 Managed ODP.NET 12.1.24160719(取自 NuGet),某段程式碼誤傳 Varchar2 OracleParameter 與 DATE 欄位進行比對,預期應出現型別不符錯誤,但得到錯誤訊息為 ORA-03111 在通訊通道上收到中斷訊號( Break received on communication channel ): 該資料表有其他 DATE 欄位,將 WHERE 條件換成其他 DATE 欄位,也會觸發 ORA-03111。 另一個資料表也有類似...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 03-22-2017
  • 使用 Process Explorer 查看 .NET Callstack

    WinDbg 追查 CPU 飆高問題 一文發表後,在 FB 收到網友 Webber Han 回饋(在此感謝),提到射茶包利器 Process Explorer 也能像 WinDbg 一樣檢視 Callstack 中的 .NET 組件、函式資訊,查了一下,這是 2012 年 15.2 版就加入的功能,Lag 大了。 關鍵在於「Configure Symbols」有無設定妥當,Process Explorer 的 .NET Callstack 解析也是借助 WinDbg 完成,故機器要先裝妥 WinDbg,開啟 Process Explorer 選單 Options / Configure Symbols...
    公佈在 黑暗執行緒 (Weblog)Jeffrey 發表於 02-27-2017
第4頁,共28頁 (278個項目) « 第一頁 ... < 上一頁 2 3 4 5 6 下一頁 > ... 最後一頁 »
Powered by Community Server (Non-Commercial Edition), by Telligent Systems