Telerik 的 UI for ASP.NET MVC 提供了一些元件,讓我們開發應用程式的時候,可以省掉一些造輪子的時間,但是熟讀 API 的時間是跑不掉的。
今天要分享的內容技術含量不高,單純是 ASP.NET MVC 新手,使用 Telerik 的 UI for ASP.NET MVC 踩雷過程
Telerik 的 UI for ASP.NET MVC 提供了一些元件,讓我們開發應用程式的時候,可以省掉一些造輪子的時間,但是熟讀 API 的時間是跑不掉的。
今天要分享的內容技術含量不高,單純是 ASP.NET MVC 新手,使用 Telerik 的 UI for ASP.NET MVC 踩雷過程
在 4.2 的時候,CreateMap 方法只是被標記過時
到了 5.0.2 的時候,這些過時的方法,已經被拔掉,改由 MapperConfiguration 取代,一旦升級到 5.0.2 就勢必要面臨改寫程式,也獲得到超高效能
https://lostechies.com/jimmybogard/2016/06/24/automapper-5-0-speed-increases/
從大神 Kevin 那邊知道 Arebis.Web.Mvc.ElmahDashboard 這個 Dash Board套件,它比 Elmah.axd 更加的友善,使用後讓 Log Viewer、Search 的友善度提升,二話不說立馬納入專案內;有在使用 Elmah + Sql Server 的夥伴,可以試著使用看看
http://getglimpse.com/
http://kevintsengtw.blogspot.tw/2016/05/aspnet-mvc-elmah-dashboard-elmah-sql.html
這裡將分享保護 Elmah Connect String 的使用經驗,不會提到安裝套件步驟
開發網站應用程式的時候,可以搭配一些診斷工具,方便開發人員除錯。
Glimpse (http://getglimpse.com/) 是一款內嵌至應用程式的診斷套件,不需要修改程式碼就能擁有診斷功能,強化瀏覽器 (F12,開發者模式) 辦不到的事情,比如:Sql Query。
安全性的部分,Glimpse 預設不允許遠端存取,只能用在開發環境,資訊洩漏的問題也幫我們想好了,若要開啟,請做好安全性設定
預設,SQL Server 會幫我們把 PK 設為 Clustered,當 PK 是 GUID type(uniqueIdentifier) 時,有一些注意事項
原本以為用 Code First 要把 PK 設為 Non-Cluster 很簡單,沒想到還是卡關
如果你跟我一樣,使用 Code First,PK 是 GUID,請看我的解法...
不久前,我在 VS 2015 IDE 看到 SharedProject Template,手上正好在建置多平台的專案,以前沒用(見)過好奇心驅使下,立馬建立專案,輕輕鬆鬆完成多平台的建置,請參考
http://www.c-sharpcorner.com/UploadFile/7ca517/shared-project-an-impressive-features-of-visual-studio-201/
以下是我的使用心得
結果與期望比對,是測試程式碼中最重要的一個步驟,就是用它來取代人眼比對,有關物件比對 91哥的文章有非常詳細的介紹:
https://dotblogs.com.tw/hatelove/2014/06/06/how-to-assert-two-collection-equal
https://dotblogs.com.tw/hatelove/2016/03/28/compare-object-equality-with-expected-objects
當測試程式碼用的是複雜型別,會比對型別中的屬性狀態(值),用它來決定是否通過驗證,最直接的方式就是跑迴圈一個一個比,這樣做不是很聰明,也不夠快,太費力
我會使用以下物件來完成我的工作
在這裡我分享我常用的比對方式...
續上篇:https://dotblogs.com.tw/yc421206/2015/12/30/linqpad_generate_poco_for_as400
原本的功能稍有不足,我將它能稍作些強化,添加了類別和欄位的說明註解(XML),讓類別看起來更好一些,最後的結果如下圖
撰寫 SpecFlow 的時候需要用到 AS400 上的資料欄位,為了快速產生 Spec Table 於是又把腦筋動到 SSMS 的 Results to Text,詳見前文
https://dotblogs.com.tw/yc421206/2016/01/11/232015
所以要用 SSMS 連接 AS400,對 AS400 不熟,於是詢問同事,該如何處理,經過整理後得到了以下答案...
隨手記錄下來,以免忘記
MiniProfiler 是一個追蹤套件,會在網頁秀出追蹤頁籤,方便開發人員觀察,有興趣的可以去看 Kevin 大寫的文章
http://kevintsengtw.blogspot.tw/2013/01/aspnet-mvc-4-miniprofiler.html
若你的專案不是 Web ,但又想要紀錄 SQL Command,可以使用 MiniProfiler.Integrations...