2008年7月19日

在同一個專案裡使用vb及c#建置類別庫

hihi 好久不見的坎尼浮出水面了
最近要每天都工作到很晚 且還要忙著找新屋子
lively room 都沒好好的去管理 (大概要變空屋了吧)

今天要講的是,在同個專案裡,同時使用VB及C#去編輯類別庫
首先,要在WebConfig裡加入下列設定


接著在App_Code裡加上設定的資料夾名稱
注意,要和config裡的相同喔


然後我們就可以如下面抓圖一樣
在同一個專案裡,同時建置.cs和.vb的class了

CSharp的Class

VB的Class


在畫面上拉兩個Button做事件處理


Button事件,分別引用 CSharp 的 myClassvb 的 MyClass2


結果畫面,左圖為點下 CSharp鍵,右圖為點下VB鍵


以上都是參考網路上人家寫的範例
再來是坎尼測試的結果

雖然vs 2005允許 .cs 和 .vb共存
但卻不能夠利用 partial 關鍵字來同時編寫同一個class
以上面的圖為例
坎尼已經在 .cs裡宣告一個 myClassclass
此時還要去 .vb裡宣告另一個 myClass 時 .NET就跟坎尼說「不可以」

後來坎尼想一想也對
兩邊的東西本來就不相同 (語法、內建類別、函數...等)
在同一個class裡寫 恐怕在編譯時 電腦會先瘋掉吧

partial 的用途就是 在compile時 把兩個相同的class 編成同一個 dll
所以如果.vb和.cs共存 就可以想像成我們在同一個class裡
上一個函數還是 public string myMethod(){}
下一個函數怎麼會變成 public Function myFunction() As String

好了 最後再來課後補充一點
上述的方法是在講 App_Code 裡的東西
其實網頁專案平常就可以讓 .cs 和 .vb共存了

只要在新增一個WebForm時 選擇要用的語言即可
見下圖 (這是可以run的程式喔)


以上 這兩天放假坎尼就來多寫一些好了 (不過還是找房子先)
Tim一直說沒文章 (自己還不給我上來寫 大怒)

1 則留言:

Unknown 提到...

我明明就有抽空亂貼了兩篇:p
這禮拜在測試 Win 2K8 & SQL 2K8,
等整理出來再貼個文(應該會很長),
這邊能不能上傳附件啊?

Google Spreadsheet 裡用規則運算式

最近因為工作關係,遇到要用 Google Form 及 Google Sheet 所以研究了 Google Sheet 裡的一些 function 怎麼用 首先,分享一下如何在 Google Sheet 裡用規則運算 :D