2007年12月22日

微軟IE8通過Acid2標準測試 明年上半年推出測試版

相關網址

微軟IE瀏覽器部門總經理Dean Hachamovitch日前表示,下一代瀏覽器IE8內部版已經通過核心的Web標準測試।Hachamovitch稱,經過對內部初級版IE8瀏覽器的測試顯示,仍在開發之中的IE8在標準模式下已經通過主要的Web標準「Acid 2」測試।Hachamovitch表示,明年上半年微軟計劃推出IE8的初級測試版本.另外,之所以現在公佈這些消息,並不是對opera的抱怨而做出 的反應.



Hachamovitch說,我們只是想證明,IE8已經初步成型,微軟有能力推出最終的正式版產品.至於IE8正式版的具體上市日期,目前還尚未確定.本月初,微軟董事長比爾·蓋茨證實,下一代IE瀏覽器將被命名為Internet Explorer 8(IE8).隨後,Hachamovitch在IE博客中正式宣佈了IE8的命名.上周,挪威瀏覽器開發商Opera向歐盟抱怨,稱微軟利用Windows的主導地位壟斷瀏覽器市場. 而且,微軟並不遵守已被業內接受的Web標準,從而破壞了互操作性.上週五,微軟對此給予了反擊,稱在Windows系統中捆綁IE瀏覽器對消費者是有利的.此外,IE所支持的Web標準也很廣泛.

2007年12月13日

[轉錄]ASP.NET 3.5 Extensions CTP Preview Released

轉錄來源:原文 中文

今天早些時候,我們發佈了我們一直在開發的ASP.NET 3.5 Extensions的第一個CTP預覽版(點擊這裡閱讀我以前寫的關於我們產品路線圖的帖子)。這個預覽版給ASP.NET和.NET 3.5帶來了額外的運行時功能。你可以在這裡下載(如果你要使用MVC功能的話,也請點擊這裡下載MVC工具包)。


ASP.NET 3.5 Extensions第一個預覽版包括:

  • ASP.NET AJAX改進: ASP.NET 3.5 Extensions中新的ASP.NET AJAX功能包括,更好的瀏覽器歷史的支持(向後/向前按鈕的集成,服務器端歷史管理支持等),使用永久鏈接(permalinks)改進的AJAX內容鏈接支持,以及額外的JavaScript庫的改進。
  • ASP.NET MVC: 這個ASP.NET模型,視圖,控制器(MVC)框架提供了一個結構化的模型,促成web應用中的清晰的關注分離,方便你單元測試代碼和支持TDD流程。它還提供了對你發佈在應用中的URL更多的控制,以及對從中輸出的HTML的更多的控制等。
  • ASP.NET動態數據支持: ASP.NET 3.5 Extensions提供了一些能促進快速開發數據驅動的web應用的特性,提供了豐富的支架(scaffolding)框架,將促進使用ASP.NET WebForms和ASP.NET MVC來快速開發數據驅動的網站。
  • ASP.NET Silverlight支持: 在ASP.NET 3.5 Extensions中,我們將提供將Silverlight輕鬆集成進你的ASP.NET應用的支持,這些支持將包括一些新控件,它們方便你在網站上集成Silverlight視頻,音頻和可交互性內容。
  • ADO.NET Data Services: 與此同時,我們還將發佈ADO.NET Entity Framework(實體框架)。這提供了一個新的建模框架,允許開發人員定義與數據庫數據定義相對應的概念性模型,這個概念性模型與信息的現實世界觀更為接近。我們還將發佈一套新的數據服務(代號名為「Astoria」),方便你從ASP.NET應用中呈示基於REST的API端點。


我們將在以後的日子發表許多博客帖子和錄像,討論相關的新特性。點擊這裡查看一套初始的Quickstart例程,這些例程討論了預覽版的一些新特性。


在下面,你可以找到我撰寫的幾個教程帖子(以及Phil Haack的一個非常酷的TDD帖子)的鏈接,這些帖子討論了新的ASP।NET MVC框架。我還將在以後撰寫更多的貼子討論擴展預覽版中跟MVC無關的特性:


想問問題或求助的話,請訪問http://forums.asp.net/上的這些論壇:

2007年12月5日

CopySourceAsHtml For Visual Studio 2008 RTM

過去在Visual Studio 2005中,因為常常要貼程式碼,為了美觀都會使用CopySourceAsHtml這個Addin工具。

現在Visual Studio 2008出來了,當然也要裝在Visual Studio 2008中,這次去原來的官方網站沒有發現更新的版本。後來google了一下,還是有同好把它給搞定了。

首先下載CopySourceAsHtml For VS2008

然後將解壓縮後的三個檔案放到C:\Documents and Settings\Administrator\My Documents\Visual Studio 2008\Addins目錄中,如果你沒有Addins資料夾,請自行建立。



然後重開後就可以使用CopySourceAsHtml工具了。

在VS2008上開發Silverlight不會出現intellisense的解決辦法

今天在玩Visual Studio 2008的Silverlight專案,發現Silverlight檔案無法出現Intellisense。
依照之前的作法是把SDK中的silverlight.xsd放到C:\Program Files\Microsoft Visual Studio 8\Xml\Schemas目錄中就好,可是這次放進去也沒用。



後來發現只要去更改屬性中引用的schemas就可以了。方法就是把silverlight.xsd選項改成Automatic。



Welcome back Intellisense!!!


XAML檔案如果不用Intellisense來開發是很累人的。Orz

2007年12月4日

Silverlight 1.1 正式更名為 Silverlight 2.0

慢了幾天,剛剛董哥提到,我才知道...Orz
版本的更迭真是讓人一團亂...



轉錄自:
http://blogs.msdn.com/cqwang/archive/2007/11/30/silverlight-1-1-silverlight-2-0.aspx

兩個月前我們在Windows和Mac上發佈了Silverlight 1.0,並公佈了在Linux上交付Silverlight的計劃。Silverlight 1.0專注於在瀏覽器上提供富媒體場景,並支持JavaScript/AJAX編程模型。

明年我們會發佈Silverlight的重大更新,專注於提供豐富互聯網應用。這個版本會包括跨平台,跨瀏覽器版本的.NET Framework,支持在瀏覽器中豐富的.NET開發平台。今年早些時候我們發佈了包含此版本一些基本功能的早期Alpha。我們下一個公開預覽版會增加更多的特性。一些新的.NET相關的特性包括:

WPF UI Framework: 當前的Silverlight Alpha 版本僅包含基本的控件支持和managed API用於UI繪製。下一個公開預覽版會增加更高級WPF UI Framework特性的支持。這些包括:the extensible control framework model, layout manager support, two-way data-binding support, 以及control template和skinning support。WPF UI Framework在Silverlight中的特性將會是上星期發佈的.NET Framework 3.5中的WPF UI Framework特性的一個兼容子集。

Rich Controls: Silverlight會提供豐富的控件集使創建Rich Internet Applications變得更容易。下一個Silverlight預覽版本會增加core form controls的支持(textbox, checkbox, radiobutton等),built-in layout management controls (StackPanel, Grid, 等), common functionality controls (TabControl, Slider, ScrollViewer, ProgressBar, 等) 以及data manipulation controls (DataGrid, 等)


Rich Networking Support: Silverlight會交付豐富的網絡支持。下一個預覽版會增加REST, POX, RSS, 和WS*通訊的支持。它也會增加跨域網絡訪問(因此Silverlight客戶端可以訪問互聯網上任何受信任源上的資源)


豐富的基礎類庫支持: Silverlight會包括豐富的.NET功能基礎類庫(collections, IO, generics, threading, globalization, XML, local storage, 等)。下一個Silverlight預覽版也會增減預覽版也會增加內置的LINQ到XML和更豐富的HTML DOM API集成。

先前我們把這個集成.NET的Silverlight版本稱為"Silverlight 1.1"。但是回顧了所有這些新特性(上面的列表只是一部分,還有我們未公佈的),我們認識到稱其為一個子版本並未真正反映其本質。因此我們已決定從此更改其名稱為"Silverlight V2.0"。

我們會在2008年第一季度發佈Silverlight 2.0 Beta。該Beta支持Go-Live許可,使開發者能開始構建和部署Silverlight 2.0應用。

我們也會發佈免費的Visual Studio 2008 tools更新來在Visual Studio 2008內支持Silverlight 2.0,使開發者能容易的使用任何.NET語言構建Silverlight應用。我們支持在Visual Studio 2008標準版/專業版上開發Silverlight,也支持免費的Visual Studio 2008 Express版。

今後幾個星期我們會討論Silverlight 2.0應用程序構建的更多深入問題,請期待。

無法載入檔案或組件 'System.Data.DataSetExtensions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' 或其相依性的其中之一

問題產生背景:

當開啟AJAXFuturesEnabledWebApplication專案類型時,沒有添加任何功能,執行時就會產生這樣的錯誤。



這時,我們看到在C:\WINDOWS\assembly下的System.Data.DataSetExtensions.dll版本為3.5,沒有看到2.0的版本。




這時候只要把web.config assembly參考中的System.Data.DataSetExtensions版本改成3.5版本就好。









2007年12月2日

Expression Blend SP1 Released



下載網址


修正問題列表:

此 Hotfix 彙總套件修正了下列問題。
Visual Studio 2008 問題
• 您無法開啟並當您在運算式 Blend 建立專案並再您修改 Visual Studio 2008 中的專案就可使用 Visual Studio 專案。

注意 後您套用 Service Pack, 本篇文章中所描述 Blend 運算式以 Visual Studio 2005 格式仍支援專案。 除此之外, 在 Blend 運算式, 會建立專案將會在 Visual Studio 2005 格式。

當地語系化問題
• 940323 (http://support.microsoft.com/kb/940323/) 在運算式 Blend Microsoft FIX: 錯誤訊息: 「 無法貼上剪貼簿文字 " 而且 」 的下列事件處理常式會複製到剪貼簿 」

運算式 Blend 到損毀, 造成問題
• 當您按一下 [ 進階選項 ] 屬性 可能會損毀 Blend 運算式。 這個問題的發生原因, 是如果當您將焦點移遠離 ] 面板按一下 [ 進階選項 ] 屬性 。 舉例來說, 這個問題的發生原因, 是當您將焦點從 ] 面板加入至資源面板。
• 當一份文件的根項目具有 uninvertible RenderTransform 轉換可能會損毀 Blend 運算式。 舉例來說, 這個問題的發生原因, 是如果 ScaleX 屬性, 或是 ScaleY 屬性的使用者控制項設定為 0 (零) 明確或動畫時刻表期間。
• 運算式 Blend 筆刷轉換 箭號會調整在控制項範本時, 可能會損毀。
• 當您扭曲 ] 按鈕可能會損毀 Blend 運算式。
• 當您試著使用複製和貼上作業, 從預覽版本的運算式 Blend 2 至運算式 Blend 專案複製設計元素 Blend 運算式可能會損毀。
• 當您嘗試修改繫結至另一個項目範本可能會損毀 Blend 運算式。
• 當您拖曳到弧形線段 Bezier - 路徑區段 Blend 運算式可能會損毀。
• 運算式 Blend 當 FlowDocument 項目是根目錄的開啟 .xaml 檔案可能會損毀。
• 當您在具有多個開啟文件的專案中使用集合編輯器可能會損毀 Blend 運算式。
• 當您叫用沒有子系具有 3 D 物件上的 [ 取消群組 ] 指令可能會損毀 Blend 運算式。 當您叫用, 多個選取的物件其中之一無法被取消群組上的 [ 取消群組 ] 指令也可能發生這個問題。

請注意 後您套用 Service Pack, 本篇文章中所描述 取消群組 ] 命令沒有取得沒有子系或無法被取消群組在項目上的。

一般性問題
• 您可能會在運算式 Blend 緩慢效能非常如果資源字典有許多資源。
• 當您清除 多媒體 屬性的 多媒體 屬性的設計元素值不正確地設定為 Null 。
• 當您試著啟動 Visual Studio 時退出 Blend 運算式可能會發生問題。

修正清單列表

如何動態選擇報表欄位

之前不知道在哪裡看到了這個需求,現在來實作看看。
首先,在畫面中新增一個GridView,並且在其Header中的每個欄位放置一個checkbox。



然後報表樣板設定




然後設定四個全域參數,這四個參數會依照接收的值,判斷欄位是否要顯示(這裡預設值為1(顯示)):



接下來在某欄位的Visibility的hiden屬性中,輸入下列運算式,然後存檔:



然後只要在程式碼中在作程式碼設定:

(這段程式碼很醜,應用的話請美化一下,像CheckBox_CheckedChanged事件可以共同使用一個就好)

 
Dim P1 As Integer = 0
Dim P2 As Integer = 0
Dim P3 As Integer = 0
Dim P4 As Integer = 0

Protected Sub CheckBox1_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs)
checkAll()
End Sub

Protected Sub CheckBox2_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs)
checkAll()
End Sub

Protected Sub CheckBox3_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs)
checkAll()
End Sub

Protected Sub CheckBox4_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs)
checkAll()
End Sub

Sub checkAll()
If CType(GridView1.HeaderRow.Cells(0).FindControl("CheckBox1"), CheckBox).Checked = False Then
P1 = 0
Else
P1 = 1
End If

If CType(GridView1.HeaderRow.Cells(1).FindControl("CheckBox2"), CheckBox).Checked = False Then
P2 = 0
Else
P2 = 1
End If

If CType(GridView1.HeaderRow.Cells(2).FindControl("CheckBox3"), CheckBox).Checked = False Then
P3 = 0
Else
P3 = 1
End If

If CType(GridView1.HeaderRow.Cells(3).FindControl("CheckBox4"), CheckBox).Checked = False Then
P4 = 0
Else
P4 = 1
End If


Dim ss(3) As ReportParameter
ss(0) = New ReportParameter("P1", P1)
ss(1) = New ReportParameter("P2", P2)
ss(2) = New ReportParameter("P3", P3)
ss(3) = New ReportParameter("P4", P4)


ReportViewer1.LocalReport.SetParameters(ss)


ReportViewer1.LocalReport.Refresh()
End Sub



這樣就可以根據Header的勾選狀況來決定ReportViewer顯示狀況:



ps:這邊有兩個要注意的地方(我使用VS2008)

1. reportviewer的rdlc樣本設計方式跟rdl樣板設計方式變得一樣了。

2. 更炫的是,終於盼到了本機端報表(rdlc)也能列印的功能了

2007年11月19日

Windows Communication Foundation 新一代應用程式通訊架構



最近兩個月都沒發表文章,都在弄這本書‧
終於快完成了...Orz
接下來又有另一個計劃,不過得看看月底找工作的情況。
Anyway 技術是學不完的,大家一起努力吧。












協助建立新一代應用程式通訊連結的官方手冊
Windows Communication Foundation(WCF)為開發新一代Windows應用程式的主要架構之一,以服務導向為基礎,提供一致的通訊架構與解決方案,以連結不同的服務與應用程式。透過本書的範例練習,你將循序漸進地學習最新的.Net Framework技術,以及了解如何建立及實作完整的企業級Windows應用程式之WCF Service。


預購網址:

http://www.delightpress.com.tw/book.aspx?book_id=SKTP00010

Visual Studio 2008 and the .NET Framework 3.5 are now available to MSDN subscribers




是的,Visual Studio 2008 RTM版本釋出了。




相關連結:
Visual Studio 2008 and .NET Framework 3.5 Training Kit

"More Visual Studio 2008 Videos"

Try Visual Studio 2008

2007年9月18日

如何開啟IE,並且傳入新網址?(IE7)

過去在IE6,我們可以透過Process.Start("IExplore.exe","http://blog.lolota.net") 來開啟一個新的網頁。

但是在IE7推出後,我們怎樣在IE上開一個新網頁後,第二個網頁就直接開在Tab上,而不是另外再開一個IE?
我們可以透過「SHDOCVW.DLL」這個IE元件來達成這個目標。

甚麼是SHDOCVW.DLL?
SHDOCVW.DLL是Internet Explorer的一個元件,該元件負責控制對從Web網站返回的URL和資訊的處理。

首先在專案中加入SHDOCVW.DLL參考(位置在:C:\Windows\System32\shdocvw.dll)
然後撰寫下列程式碼:




程式碼裡透過傳1的值來開新視窗,2048則是開新的Tab。
參考來源:http://blogs.msdn.com/rahulso/archive/2006/12/17/visual-basic-and-ie-7.aspx

2007年9月7日

[Reporting Services]如何每一頁顯示15筆資料且又能依照群組分頁


之前寫過如何設定Reporting Services報表每幾筆就分頁?如何在報表群組中使用RowNumber函數?


但如果要依照群組分組,且又希望每頁15筆資料,那要怎作?

首先在報表樣板中設定一個以「您要分類的欄位」的群組(我以北風的訂單資料表來當範例)

然後將Page Break at end(插入分頁符號)打勾

然後再新增一個群組,運算式填入=Int((RowNumber("table1_Group1")-1)/15),紅色的部分是以哪一個群組去加入行列號碼,這樣就可以達到每一頁顯示15筆資料且又能依照群組分頁。

2007年9月4日

奇怪的VS2005跟Vista

之前在Vista灌好VS2005,然後都沒有用到,今天想說在上面試看看。
但是卻一直新增專案失敗,我想說VS2005 SP1 For Vista都有灌過啦,
看看About MS VS內的資訊,沒錯我是灌過啦。而且開啟的時候也是以
管理員身份開啟。但是也是一直失敗 Orz

後來我在重灌一次VS2005 SP1 For Vista就好了。

總結一下,在Vista無法新增專案時的檢查步驟:
1.看看是不是有安裝VS2005 SP1 For Vista
2.看看有沒有以管理員身分開啟


如果以上都有,您就可以試看看重灌了。OrZ

Microsoft DSL 研討會

這個是我之前公司的學長所開的研討會,有興趣的人可以去感受一下DSL的威力,我離開公司前就是跟學長一起搞這玩意,我想喜歡「軟工領域」的人一定要去看看











http://www.microsoft.com/taiwan/msdn/events/dsl/event070927_1.htm

地點:台北
時間:9/27 (四)
講師:羅貴揚

議程如下:

第一場:
時間:10:00 AM - 12:00 PM
地點:台灣微軟 7A/7B

題目:軟體發展 - 工業化

內容:
 
商業需求成長的幅度愈來愈快,也愈顯差異化。然而,軟體開發人員成長的曲線卻一直趕不上商業需求量,尤其是在商業應用蓬勃台灣。在本場講座中,我們將會探討資訊軟體發展的現況與長期的處境與問題,了解現今軟體發展理論與方法學不足的處,從而進入 Microsoft 近期所推廣之 "軟體工廠" 的主張。本場主要焦點將是介紹 "軟體工廠" 中一重要角色 - "特定領域語言 (Domain-Specific Language,DSL)"。使與會者了解其存在的目的、內涵、期望效益與在真實世界中所會碰到的推行上的困難與解決之道。

等級:100

聽眾須具備技能:無。
 
---------------------------------------------------------------------------------
第二場:
時間:13:30 PM – 15:30 PM

地點:台灣微軟 7A/7B

題目:特定領域塑模的實踐 - 使用 Microsoft Visual Studio 2005 DSL Tool

內容:
 
在本此主題中,講師會先和與會者展示實際將 Visual Studio DSL Tool 所發展之特定領域塑模,大量運用於現實商用軟體之效果,並說明與軟體工程工具 Visual Studio Team System 作完整結合後的實際效益。接著,將會介紹 Visual Studio DSL Tool 的功能組成,使與會著逐步了解整體設計流程。最後,將分享在真實的商業組織裡,如何辨視出值得塑模之 Domain Know-How,如何設計一個正確、實用的 Modeling Tool 與相關配套之自動化生產模版 (Template),以及如何將產製之成本或半成品作有效的客製化,以達到軟體工廠所希望達成之 Mass Customization (大量客製化) 的商業目標。

等級:200

聽眾須具備技能:了解 DSL 之商業目標與意義。
 
------------------------------------------------------------------------------------------------
第三場:(難得的Handon 場次)
時間:15:40 PM - 17:40 PM

地點:台灣微軟 T701 會議室

題目:Hands on Lab - 實際體驗 Microsoft DSL Tool (名額限定 20 人,依照進場順序,額滿為止)

內容:
 
在 DSL 講座的最後一場,講師將挑選適當範例,帶領現場參與 Hands on Lab 的與會者,End to End 的真正體驗 Microsoft Visual Studio DSL Tool,以期與會者在回到真實的商務應用環境後,能即刻著手,立即提昇公司的整體競爭力。

等級:200

聽眾須具備技能:
 
了解 DSL 之商業目標與意義
初步了解 DSL Tool 之整體設計流程
需攜帶個人電腦 (如未具備,請恕無法進入教室)
需事先安裝軟體 (如未具備,請恕無法進入教室):
Visual Studio 2005 Standard Edition 或更高版本
Visual Studio 2005 中, 安裝 C# 與 C++ 兩種語言
Visual Studio 2005 SDK Version 4.0 (可從這裡下載)

驗證軟體環境:
 
使用者開啟 Visual Studio 2005。
點選選單之 "檔案 (File)" → "新增 (New)" → "專案 (Project)"。
選擇 "其它專案型態 (Other Project Types)" → "擴充 (Extensibility)" 的 "Domain-Specific Language Designer" 專案。
按 OK。
在 Wizard 裡,一直點選 "下一步 (Next)",到最後執行 "完成 (Finish)",稍待會等專案建構完成。
專案建置完成後,點選選單之 "偵錯 (Debug)" → "開始偵錯 (StartDebugging)"。
如有另一名為 Debugging 之 Visual Studio 2005 之開發環境出現 ,則表示操作環境已驗證完成。

2007年8月16日

透過SQL語法來查詢目前CPU的相關資料(例如Core)

可以透過下列語法來查詢CPU的Core Count>
SELECT cpu_count/hyperthread_ratio AS sockets
FROM sys.dm_os_sys_info;
GO

當然sys.dm_os_sys_info這個資料表內有更多資訊,就等你自己去挖掘啦。

適用SQL Server版本:2005
參考出處:
http://blogs.msdn.com/buckwoody/archive/2007/08/13/script-of-the-day-find-the-cores-on-a-system.aspx

七夕情人節快到了,來束花吧。

在微軟SilverLight官方網站上看到這個應用剛好符合快到的節慶,有興趣的可以按上面連結玩看看。


附帶一提:
我裝SilverLight 1.1 Alpha Refresh好像會有問題(IE會出現SysFlader..錯誤<--大概是這個訊息)
不知道有沒有人遇過?

[Info] 如何快速找到Fix it?

  台灣微軟目前提供了很多的Fix it,讓許多消費者可以不用看完整篇KB,只要按下一個按鈕,就可以幫使用者自動修正許多問題. 現在在Vista以及Windows 7上,微軟也提供了SideBar工具,讓你用最短的時間找到能修正您的電腦的Fix it.(目前為英文版本) ...