2009年6月30日 星期二

HTML/CSS課程學習心得

今天去聽了 "HTML/CSS課程"
很多人都問"幹麻去聽那個呀,你都會了不是嗎?自己看就行了"
實情是,我不太會(由其是CSS),HTML Tag也沒認識多少個!
反正,藉此沐浴一下別人的春風也無妨!
聽了一天課之後,發現,還真的該聽一下這個課呢!
Web都前進到2.0了(3.0也浮上檯面了),你還要使用1.0的Tag嗎?
就像是我現在的寫照一樣!

呵,沒上這課之前,我都快快樂樂使用 table , tr, td, hr 等標籤
可是老師說"這個在Web 2.0都不太用了,現在改用別的方式...."
"HTML Tag不需要懂那麼多,現在都只用這幾個,學這幾個就行了...."
"使用XX東西,以後在設計AJAX或使用JQuery時會有不良影響..."
哇,老師沒講,我從來沒想過這個問題哩…

果然技術是需要翻新的,人也需要學新東西,不要以為簡單,就不去學!
以後我就不會在ASP.NET課堂上說"要做定位就使用table, tr,td...

2009年6月29日 星期一

再會啦! System.Data.OracleClient

據微軟ADO.NET小組的表示,未來在.NET 4.0 之中,System.Data.OracleClient 將會被標示為deprecate (不宜使用)!
再會啦,不用再學你啦!

2009年6月25日 星期四

Tips:查詢.NET Framework版本

要如何查詢.NET Framework版本?下個指令就好!
CLRVER
查詢電腦安裝的.NET Framework版本
CLRVER -all
查詢目前程式載入的CLR版本


2009年6月22日 星期一

Tips: Visual Studio 設定除錯中斷點 6

物件變數會有Out of Scope的問題 ,因此,以下範例在 Main方法中,便看不到o變數值,Watch Windows會呈現灰色:

可以在建立物件時,為o變數設定一個ID:
Visual Studio會為建立一個Weak Reference,並取個編號,如 1#,其後便可使用1#來參閱物件資訊: (原來Weak Reference是這樣用的啊! 真象終於大了個白!)

Tips: Visual Studio 設定除錯中斷點 5

在中斷模式下,使用除錯提示會遮蔽原有程式碼,試著按 CTRL 看看:

Tips: Visual Studio 設定除錯中斷點 4

設定多執行緒程式中斷點,測試程式如下:

1 class UsingThreadJoin

2 {

3 static void Main(string[] args)

4 {

5 ThreadStart o = new ThreadStart(SimpleWork);

6 Thread[] t = new Thread[5];

7 for (int x = 0; x < 5; ++x)

8 {

9 t[x] = new Thread(o);

10 t[x].Name = "執行緒" + x.ToString();

11 t[x].Priority = ThreadPriority.Normal;

12 t[x].Start();

13 }

14 foreach (Thread temp in t)

15 {

16 temp.Join();

17 }

18 Console.WriteLine("finish");

19 }

20 static void SimpleWork()

21 {

22 Console.WriteLine("Thread: {0} name: {1}",

23 Thread.CurrentThread.ManagedThreadId,

24 Thread.CurrentThread.Name);

25 Thread.Sleep(100);

26 }

27 }



設Filter: 當執行緒3執行時,進入中斷模式

中斷結果:

避免單步除錯時,執行緒會相互干擾,你可以暫停其它執行緒執行:

Tips: Visual Studio 設定除錯中斷點 3

今有程式如下,要在第6行設中斷點,當i為0時要進入中斷模式,利用EqualToZero方法來判斷:

1 class testCondition

2 {

3 static void Main(string[] args)

4 {

5 int i = 0;

6 Console.WriteLine(i);

7 }

8 static bool EqualToZero(int testdata)

9 {

10 if (testdata == 0)

11 return true;

12 else

13 return false;

14 }

15 }


設Condition如下:
叫用EqualToZero檢查:
執行時會進入中斷模式:

Tips: Visual Studio 設定除錯中斷點 2

你也可以在 Call Stack視窗快速設定中斷點,如以下範例:
在Call Stack中項目上按 F9
也可以選Run to Cursor

結果:

Tips: Visual Studio 設定除錯中斷點 1

通常在Visual Studio設中斷點只要在左側灰色地方點一下即可,例如:

不過,在for迴圈的情況下,只會在 int i=0此行設定中斷點
若要在i<100這行設中斷點,可以將游標停留在此行,按f9,如:> 即可設好中斷點




2009年6月18日 星期四

C# 4 Covariant & Contravariant

C#4封閉的泛型支援Covariant & Contravariant,例如以下程式在C# 3不可編譯;在C# 4可正常執行



1 class outputsafe

2 {

3 static void Main(string[] args)

4 {

5 IEnumerable<string> data = new string[] { "a", "b" };

6 PrintData(data);

7 }

8 public static void PrintData(IEnumerable<object> o)

9 {

10 foreach (var t in o)

11 {

12 Console.WriteLine(t);

13 }

14 }

15 }

2009年6月17日 星期三

VB 10 的新語法

1.Auto-Implemented Properties 自動實作屬性



1 Module Module1

2 Property EmpName As String = "Mary"

3 Sub Main()

4 Console.WriteLine(EmpName)

5 End Sub

6 End Module


2.Collection Initializers & Statement Lambdas ,
除了3.5的Array Initializer之外,多了Collection Initializers

1 Module Module1

2 Sub Main()

3 '陣列初始設定式

4 Dim dataArr() As Integer = {1, 4, 23, 21, 34, 24}

5 Array.ForEach(dataArr, Sub(x)

6 Console.WriteLine(x)

7 End Sub)

8

9 '集合初始設定式

10 Dim dataCol As New List(Of Integer) From {1, 4, 23, 21, 34, 24}

11 dataCol.ForEach(Sub(x)

12 Console.WriteLine(x)

13 End Sub)

14 End Sub

15 End Module

C# 4 具名參數

參數可以命名,例如:

1 class Program

2 {

3 static void Main(string[] args) {

4 Console.WriteLine(Add(x:20,y:10));

5 }

6 static int Add(int x, int y)

7 {

8 return x + y;

9 }

10 }

C# 4 選擇性引數(Optional Arguments)

宣告方法的引數,給個預設值就行了,例如:

1 class Program {

2 static void Main(string[] args) {

3 Console.WriteLine(Add(10, 20));

4 Console.WriteLine(Add(10, 20,30));

5 }

6 static int Add(int x, int y, int z = 0) {

7 return x + y + z;

8 }

9 }

Tips: VS2010 Call Hierarchy視窗

Call Hierarchy視窗檢視呼叫關聯性的好工具!


Tips: VS2010增強的智慧型感知功能

1.在ASP.NET網頁中加一個TextBox,設ID為txtLogin
2.輸入Login,也會自動提示 txtLogin



StepByStep(29):ASP.NET 4.0統計圖表

使用VS2010建立ASP.NET專案時,不小心瞄到有一個Chart Control,隨手拉到網頁來試試,很快就可以做出網頁上的統計圖表! 真是方便ㄚ!

1.建立ASP.NET Web專案
2.將Chart拖到ASPX
3.選擇資料來源
4.選資料庫

5.選取Northwind,按下一步直到以下畫面,挑選SP
6.測試SP
7.設定ChartType,X,Y軸資料
8.Run

2009年6月16日 星期二

StepByStep(28):ADO.NET資料服務之WPF資料繫結

ADO.NET Data Services v1.5 CTP1 提供了新的資料繫結能力,需先下載並安裝
ADO.NET Data Services v1.5 CTP1

1.使用以下方式設定環境變數與啟動Visual Studio 2008:
2.建立一個Web Site
3.加入ADO.NET Entity Data Model
4.從DB取得資料
5.連結到Pubs
6.選Table
7.加入ADO.NET Data Service v1.5 CTP1
8.修改svc檔案開放權限:
9.執行svc測試
10.加入一個WPF應用程式
11.加入服務參考
12.在Windows1加入一個ListBox,一個ListView修改Grid與ListBox標籤如下:
13.修改ListView標籤如下
14.執行

2009年6月8日 星期一

Step-By-Step教學(27):WF4- Flowchart入門

以下步驟是Workflow 4, Flowchart應用程式入門
1.新增Flowchart Workflow Console Application
2.加入引數
3.拖曳一個WriteLine到設計畫面,設Text屬性
4.從流程起點(綠色圓點) 拖曳線段到WriteLine
5. 修改Main方法


1 AutoResetEvent syncEvent = new AutoResetEvent(false);


2 Dictionary<string, object> input =


3 new Dictionary<string, object>() {


4 { "name", "Mary" }


5 };


6 WorkflowInstance myInstance = new


7 WorkflowInstance(new Flowchart1(), input);

6.執行

2009年6月6日 星期六

Step-By-Step教學(26):WPF4 - 資料繫結

WPF 4終於人性!
怎麼都覺的學不會WFP3, 終於WPF4提供了類似Windows Forms的資料繫結設計能力!!
步驟應該不用解釋了,看了就懂得
1)建一個WPF應用程式
2)



3)
4)
5)
6)
7)
8)
9)
10)
11) Run

總網頁瀏覽量