發表文章

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

ChromeExtensionTemplate in Vs2013

圖片
今天本想參考此篇文章來玩一下程式產生器,但在裝完必要條件The latest Sidewaffle VSIX 後,發現在新增專案時有一個Chrome Extenstion的樣板可以使用,一時手癢寫了一個Hello World來玩玩

簡單好用的TreeGrid

圖片
最近寫的程式需要呈現在表格上階層資料關係,找了些相關的PlugIn後,發現TreeGird此PlugIin,完全符合我的需求:
1.載入的.js及.css很少且很輕量,只需載入bootstrap,而不用載入其他太多的PlugIn ps:我目前找plugIn也是以此方向去找。
2.Script撰寫簡單,只需一行程式$('.tree').treegrid();。
3.階層的定義方式很直覺,直接以Table並在tr加上css名稱來區分上下關係。
4.直接定義在HTML上,內容調整相當容易
5.事件支援 如:展開/收合
6.狀態保存(需引用jquery.cookie.js)


開始介紹如何使用前,先看一下範例成果

Applying S.O.L.I.D. Principles in .NET/C#-Note

[VS2013]解決-發生例外狀況,這可能是某個擴充功能造成的

圖片
前言   如下圖,只要專案一打開,所編輯的第一個html就會出現警告視窗,但關掉就不會再發生。本來想說一天出現個一、二次無傷大雅(其實是懶得早答案XD)。

ProxyCreationEnabled=false 測試

前言 這幾天在偵錯EntityFramework時都會看到Entity的型別為Entity+編碼後的DynamicProxy類別,好奇的去找一些文章來瞭解它到底有什麼作用。

優點 1.在Lazy Loading=true,可以讓導覽屬性延緩載入 例:RoleEntity底下有一個ICollection<User>屬性。
2.用來追蹤變更資訊-->這點我找不到要用在哪及如何使用,找到的說明好像也是.net4.5前才有一些ObjectStateManager的應用..。


缺點 1.WebAPI序列化會發生失敗。
2.無法在分散式架構快取。
3.取用導覽屬性時若一開始忘了下Include(),而在foreach又取導覽屬性的資料,會造成大量的查詢次數
ps:這點我還常犯=.=

foreach (var role in roleList) { foreach (var user in role.SYSUSER) { } }
將ProxyCreationEnable設為false有何影響? 1.若要取用導覽屬性的資料需自行下Include()。
2.Lazy Loading無法使用。
Ps:不知還有沒有其他潛在問題
針對自己在使用上的疑慮作了以下簡單測試 1.IQueryable to List後才執行查詢-->Yes
2.Include()是否取得到導覽屬性-->Yes,導覽屬性會使用join的查詢方式,一次載入
3.Entity的異動是否可以更新-->Yes
4.導覽屬性的集合資料是否可以刪除,例:將某一使用者從角色中移除—>ok
static void Main(string[] args) { using (MyEntities db = new MyEntities()) { db.Configuration.ProxyCreationEnabled = false; v…

Entityframework-撞牆整理

圖片
前言針對最近一些撞牆的問題作一下筆記....
1.關閉初始化檢查:   由於資料表是由同事在負責建立、修改,所以我並不會作去相關的資料表異動。但我的DbContext使用的是CodeFirst的方式來撰寫(並沒有使用edmx來產生poco),這樣的方式在DbContext初始化後第一次執行的命令,還是會作相關的檢查,例:資料庫是否存在、資料表是否存在、Mirgration的檢查等等...
以下為Trace Sql Profiler的截圖