2017年4月10日 星期一

[Tools]解決YAHOO信箱無法使用POP匯入至Gmail中

小弟我人生第一個電子信箱帳號是YAHOO,想當初奇摩輝煌的時刻到現在也是有很多感觸,唉~

一直到了大學,Google gmail崛起,進而轉用之。但為了避免遺漏資訊,長期都有使用POP將YAHOO信件擷取至gmail。

直到最近發現其無法再擷取到信件,刪除關聯再進行新增卻一直獲得這樣的紅色訊息...

2017年3月15日 星期三

[JavaScript]記憶體洩漏(Memory Leak)相關資料整理

整理一下近來蒐集關於JavaScript記憶體洩漏(Memory Leak)相關的資料。

總結JavaScript造成記憶體洩漏的原因就是記憶體參考(這裡有相關說明)。
由於JavaScript採用call by value reference,過程中未處理好不再使用的資料參考,造成資料一直佔據記憶體,最終導致記憶體洩漏。

2017年3月7日 星期二

[jQuery]利用jQuery的clone方法複製HTML物件

原先所做的監控系統網站採用polling的方式,定時向伺服器請求資訊,這是一種很直覺、簡單可以達成監控的作法。
為了提升效能,決定改用Server-push的方式,在伺服器端執行監控,當資料有異動時才將資訊push至前端進行更新。

經Google大神開示後,目前很多網站皆使用SignalR的這項技術來完成,這邊先稍微紀錄一下,以後有空再來好好研究這到底是甚麼鬼。

交代完背景故事,移回到正題。
由於前端改為被動的狀態,故接收到差異的資訊後,頁面的更動就必須完全仰賴JavaScript了。

2017年2月25日 星期六

[Entity Framework]IQueryable v.s. IEnumerable

由於先前遇到Entity Framework會有Cache的狀況,而注意到IQueryable以及IEnumerable。
大部分操作LINQ皆預設採用IQueryable的形式進行,以獲得對於資料庫調教後的查詢效能。

基本上兩者的差異如下:
IEnumberable為將整份完整資料載入應用程式記憶體中進行操作。
IQueryable則為類似組SQL字串的模式,將操作轉換為對應SQL字串,直到實際取得資料時才從資料庫中取回資料。(可以把他想成它就是在做LINQ語法與查詢字串之間的轉換)

2017年2月23日 星期四

[C#]Windows Forms 在不同機器上控制項跑版的原因與解法

是的,我必須承認,當初我找到自己寫的第一支程式並沒有那麼順利。
當我興高采烈地開啟專案時,卻看到...


這到底甚麼鬼,WinForm上面的控制項都不在自己應該有的位置上!
Designer.cs裡面定義的控制項座標還跟設計畫面上的不一樣!

2017年2月19日 星期日

[Entity Framework]provider: Session Provider, error 19 - 實體連接不可用

最近利用ASP.NET MVC5搭配Entity Framework寫了一個小功能,監控資料表數量!
該程式每30秒會採polling的方式向SQL Server詢問目前資料表中的資料數量,並顯示在網站頁面中。

經同事報案,在執行過程中不定時會發生Exception,錯誤描述如下:
在接收來自伺服器的要求時發生傳輸層級的錯誤。 
(provider: Session Provider, error 19 - 實體連接不可用)

2017年2月17日 星期五

[心情分享] 回顧大一(2008)時的期末專案 - Pacman(小精靈)

突然心血來潮,看看自己的GitHub近況(Traffic、Fork...),發現多多少少還是有人會來參觀,網路上的夥伴每個動作都給我莫大的鼓勵啊!

2017年2月13日 星期一

[Entity Framework]原來是Cache!用AsNoTracking()揭穿他的真面目!

很好,太好了,我又見鬼啦!
但是我並不害怕,我盯著他看了好久好久,閉著眼都可以畫出他的樣子。
就讓我好好的描述描述他到底長個甚麼樣!

小弟我使用Entity Framework製作讀取資料庫中關聯式資料,實作中將DbContext.Configuration.LazyLoadingEnabled設定為true,便可以在一次執行中將所有關聯資料都同時撈出放在單一實體中。

但是,在一次讀取後,根據讀取的關聯資料進行修改並再次讀取時,恐怖的事情就發生啦!

剛剛更改的東西讀不到啊!