觀察到使用者不時地被一個小問題給困擾著,在表單中編輯一些資訊後,突然岔去做其他事情,回來之後覺得剛剛的表單應該已經處理完了,就把網頁給關掉了,殊不知他剛剛編輯的資訊並沒有儲存,往往發現時,是已經被客訴了,要解決這個問題有很多面向的方式,系統這邊能幫的其中一種方法就是提醒使用者資料沒有儲存。
[料理佳餚] SQL Server 用 Change Tracking(變更追蹤)土砲 Replication(複寫)
- 3715
- 0
- SQL Server
在 SQL Server 可商用的版本中,Express 及 Web 版本是唯二沒有完整 Replication 的版本,但是一個免費、一個便宜,對於老闆來講這是一個可以節省成本的點,如果真的有 Replication 的需求,除了升級之外,我們還可以寫點程式自己土砲。
[料理佳餚] C# 實作二階段提交(Two-phase Commit),即使 SQL Server 沒有啟用 MSDTC 也能做分散式交易。
無論是業務需求或是 IT 需求的關係,依據不同需要將資料庫分放在不同伺服器的情形很多見,要進行跨資料庫伺服器交易我們可以啟用 MSDTC 服務來達成,我就在想能不能不去動伺服器的設定,在應用程式端來實現分散式交易?
[小菜一碟] 個人覺得 ReSharper Template 在設定上比 Visual Studio Code Snippet 好上手
程式寫久了總有一些常用的程式碼片段,我們可以透過 Visual Studio Code Snippet 來幫助我們把這些程式碼片段在需要的時候,快速插入,不過其設定步驟還挺繁瑣的,即使 Snippet Designer 已經在這個部分幫了很大的忙,但個人還是覺得 ReSharper 略勝一籌。
[小菜一碟] 與團隊共享 ReSharper 的設定
ReSharper 這款由 JetBrains 打造的輔助開發神器,應該是無人不知無人曉了,基本款一年的費用才三四千塊非常值得投資,我們公司就為每位開發人員各買一套,而 ReSharper 當中可以調整項目非常細,用久了就會發現每個人調校出來的 ReSharper 風格都不太一樣,這時候就可以大家來討論出一個公版 Share 出來。
[食譜好菜] 玩轉 SQL Server 的 FOR JSON
- 9003
- 0
- SQL Server
- 2018-10-15
FOR JSON 語法是從 SQL Server 2016 開始支援,跟 FOR XML 一樣,我們可以將整筆記錄或是部分欄位輸出成 JSON 格式,輕鬆解決類別與類別之間一對一及一對多關係的情形,再搭配 Dapper 自定義 TypeHandler,讓關聯式資料庫的欄位與類別的對應轉換無聲無息。
[食譜好菜] Xamarin.Forms(iOS)的 In-App Purchases
Apple 在審核我們的 App 的時候會看一個東西,那就是我們的 App 內提供的對外連結是否具有引導消費的功能,消費的項目如果被認定踩中了 App 內購買的類型,比如說我在我的 App 放了一個按鈕,按下去之後用瀏覽器開啟我準備好的網頁,使用者在網頁中可以付費升級專業版,這樣的話有極大的機率會被 Apple Reject,然後叫我們用他們家的 In-App Purchases
,不過實作上也不算太難。
[食譜好菜] 使用 StackExchange.Redis 對 Redis 執行批次寫入指令
Redis 的效能有體驗過的朋友應該都是有目共睹的,最近遇到一個一次要寫入 16 萬筆資料的場景,測試環境的 VM 規格都是最基本的,在測試環境測試一筆一筆寫入要大概將近 20 分鐘,而且還會 Timeout,心想即使規格不高 16 萬筆應該也不至於這麼慢吧,爬了一下文大概找到了兩種解法。
[食譜好菜] 使用 IIS Shared Configuration 讓我們不用再一台一台調整 IIS 設定
IIS Shared Configuration
是從 IIS 7.0 開始就有的東西,透過共享的機制,讓 IIS 的設定可以在一台調整,然後同時套用到其他台,對我們需要管理多台 IIS 伺服器的工作有相當大的幫助。
[料理佳餚] C# 在 Redis 發生 Failover 時自動跟著執行 HA 切換
天有不測風雲,人有旦夕禍福;服務在走,HA 要有,先前有介紹過使用 Redis-Sentinel 打造 Redis 的 HA,當時只完成了伺服器端的設定,這次要介紹如何在應用程式這一端也完成自動 failover,以維持服務的 HA。