文章

目前顯示的是 七月, 2014的文章

[Azure] 解決無法使用gmail的smtp寄信

圖片
  在系統上作了一個通知機制是當發生例外時,會透過gmail發信給管理者。但上了Azure後,明明有例外,卻遲遲收不到來信.......。到gmail上的設定檢查後,才知道由於網站是放在新加坡與我們平常存取時的位置差太遠,所以判定為異常而遭拒無法發信。

[Azure] Instance資源分配

圖片
釐清一下Instance的資源是怎麼樣分配。以Basic的方案來計算,若建立3個Instance(VM),而記憶體設定為7G,並建立了3個網站。 在分配上如下表 Instance RAM Web VM-1 7G Web-1 Web-2 Web-3 VM-2 7G Web-1 Web-2 Web-3 VM-3 7G Web-1 Web-2 Web-3 參考來源 http://msdn.microsoft.com/zh-tw/windowsazure/gg442342.aspx http://social.msdn.microsoft.com/Forums/zh-TW/bc646281-b411-4584-907d-1098e21b7a1b/azure-instance-?forum=winazurewebsite

Visual Studio Online MsBuild出現無法載入Nuget組件

圖片
目前的專案會透過Visual Studio Online簽入後,自動執行建置動作並發佈到Azure。但今天在測試時一直卡在Online Build時會發生錯誤訊息,無法載入某個內部Nuget組件。

[EntityFramework] 查詢結果將字串轉成列舉

圖片
在EntityFramework5後若你希望Entity的欄位是列舉型別,預設支援數值欄位例:int16 int32 Byte等。但若欄位是字串時,該如何處理? 如下的列舉是對應的Char型別 public enum TrCodes { A = 'A', O = 'O', S = 'S', T = 'T', P = 'P', } 試著在查詢時將Entity的欄位轉成列舉

[EntityFramework] DbContext快取測試

圖片
  針對DbContext在資料存取的內建快取機制作測試記錄。本文案例以 建立一個DbContext為主來執行CRUD ,可能會遇到的問題。 例1:直接以SQL更新或資料庫手動更新後,再查Entity的資料還是舊的 以下的程式在以SQL更新資料庫前,就先查詢該筆Entity。而預設的 快取機制 並不知道你的資料已異動,就算你再執行一次查詢,資料回來還是會是舊的 (更神奇的是用SQL Profiler看,是有執行SQL,只是未填入Entity)。 解決方法:使用AsNoTracking 以上面的程式修改成在第二次查詢時,使用AsNoTracking來直接查資料庫的資料而不使用DbConext的快取