2013年10月15日 星期二

取得時區資料

如果想要取得時區的資料,可以用以下的寫法
   
var dateFormats=CultureInfo.CurrentCulture
                           .DateTimeFormat;
var timeZones = TimeZoneInfo.GetSystemTimeZones();
foreach (TimeZoneInfo timeZone in timeZones)
{
   Console.WriteLine(timeZone.DisplayName)
}

那如果要取得英文或日文的時區資料呢?
網路上有人貼了一段寫法
var cultureinfo = CultureInfo.
                    CreateSpecificCulture("en-US");
var dateFormats = cultureinfo.DateTimeFormat; 
var timeZones = TimeZoneInfo.GetSystemTimeZones();
foreach (TimeZoneInfo timeZone in timeZones)
{
   Console.WriteLine(timeZone.DisplayName)
}

借由建立一個指定語系的CultureInfo,來做到變換時區語言的效果
但其實這段程式碼是不會Work的

我們可以看MSDN上關於TimeZoneInfo.GetSystemTimeZones()的說明
http://msdn.microsoft.com/zh-tw/library/system.timezoneinfo.getsystemtimezones.aspx

"GetSystemTimeZones 方法會從登錄中 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Time Zones 機碼的子機碼擷取所有可用的時區資訊"

所以也就是如果要取得其他語系的時區資料,要改變系統的預設語系才會有效果,而改變系統預設語系的做法網路上有很多文章可參考,在此就不做說明囉!

2013年7月31日 星期三

Kendo UI

       今天開始在看 "ASP.NET MVC 4 開發指南" 的第一章,注意到書上有略微介紹一下各家的MVC函式庫,第一個看到有興趣的是"Telerik Extensions for ASP.NET MVC ",因為之前有稍微看過它的Demo畫面,還漂亮的,於是找到了它的官網,上去看了一下說明,發現Telerik打算要用"Kendo UI" 來替代原本的"Telerik Extensions for ASP.NET MVC ",並且將終止 "Telerik Extensions" 的更新與支援,於是乎,雖然有點跳tone,我打算先來試玩一下Kendo UI!! Go Go Go

所以今天先從安裝Kendo UI開始!!

安裝前先去官網下載,這裡選擇版本是

"Kendo UI Complete for ASP.NET MVC"

下載時需要註冊一個帳號,註冊完就可以下載囉

這時Telerik也會寄一封email到註冊的信箱裡

裡面有一個youtube連結的影片

影片中說明了其實也可以透過Visual Studio 2012本身的套件安裝工具

來安裝Kendo UI ,端看個人喜好囉

安裝成功後,下次就可以開始試玩一下Kendo UI裡的各個元件囉!!







2013年7月30日 星期二

ASP.NET MVC 4 開發指南

       今天從偉大的保哥手上拿到這本大陸版的"ASP.NET MVC 開發實戰",作為重新出發時,所要研讀的第一本技術書,我會盡量把看過的內容整理成除了自已以外,別人來看也能看的懂的筆記! Fighting !  明天開始發佈第一篇文章!

2011年12月29日 星期四

CrystalReport On Winform

最近在公司做了一個產生報表的功能,要使用CrystalReport來產出報表,累積了一些心得,在此做記錄

1.多張Table間的Join最好提前完成,不要交給CrystalReport來做,在大量資料下,產生報表時所需的時間會有顯著差別。
2.CrystalReport在產生預覽報表時,會佔住WinForm本身在繪制畫面的Thread,把畫面鎖住,這是一個很不好的地方;如果是大量資料的情況下,會需要等很長一段時間,目前還沒找到辦法把它產生預覽報表的行為拉到別的Thread去做,所以暫時把產生預覽報表的功能拿掉,直接出報表檔

2011年11月18日 星期五

RDLC VS CrystalReport

最近因為工作的關係,使用了這兩種報表,有一點小心得,來做一個簡單的比較

檔案格式
1.RDLC的報表檔是XML格式
2.CrystalReport的報表檔為Binary檔案

在開發時,在同一張報表檔,測試使用不同資料集的欄位,有可能會發生把報表檔給"玩壞"的情況,這時RDLC XML格式的設計就比較有優勢了,因為可以直接用文字編輯器打開它的報表檔,把內容裡多餘的資料集引用Tag拿掉,就可以恢復正常,但CrystalReport因為是Binary檔案,所以只能重開一個重新設計,這是比較麻煩的地方。

設計方式
1.RDLC有現成的表格物件可以使用
2.CrystalReport只有提供框線物件跟線條物件,要自已組合出表格的樣式

設計報表的時侯,通常都會要使用到表格,RDLC有提供現成的表格物件,比較方便一些。

以上述兩點來看,似乎RDLC是比較好的選擇? 但是如果要設計複雜性比較高的報表時,因為CrystalReport已經推出有一段時間,功能比較多元,較能應對複雜性較高的報表。

在Visual Studio 2010已不內建CrystalReport,應該是有意要全力發展自家的RDLC報表,擴充它的功能,不過以現在來說,還是CrystalReport比較強大。