2011-04-03 33 views
1

我想在ASP.net中建立一個網站,並且整合一個用C#編寫的模塊(太複雜了,不能用VB或ASP重寫)。可能結合C#.net,VB.net和ASP.net?

現在我只想知道是否有可能有一個整合所有三個網站?

謝謝。

+0

[Mixing C#&VB In The Same Project](http://stackoverflow.com/questions/1278024/mixing-c-sharp-vb-in-the-same-project) – CharlesB 2011-11-25 18:21:06

回答

1

在ASP.NET中集成語言時,有幾個選項。如果你正在創建一個「網站」(相對於只能使用一種語言的「網絡應用程序」),那麼每個頁面都可以使用指定的語言,因爲每個頁面基本上都是單獨編譯的。有些可以使用VB,有些可以使用C#。沒問題。

然而,你所描述的聽起來更簡單。你聲稱有一個現有的C#模塊,你想在你的VB網站中使用。這個模塊是否被編譯成它自己的程序集?如果是這種情況,那麼用於創建程序集的語言就不重要了。一旦編譯完成,它就是一個.NET程序集,可以被任何.NET語言引用。它不再是VB和C#(或任何其他語言)編譯後的問題。

如果它不是一個已編譯的程序集,而是一堆類文件,它是否可以編譯爲自己的程序集?這對於保持模塊化是很好的。在一個單獨的.NET解決方案中,您可以讓每個項目都使用不同的語言。該模塊可以是用C#編寫的庫項目,而且您的站點可以是用VB編寫的引用庫項目的網站(或Web應用程序)項目。

6

是的。你可以有一個網站整合所有三個。

只需使您的複雜C#.NET庫,並將其包含在您的VB.NET/ASP.NET項目。

2

我認爲你只需引用你的模塊的C#或VB編寫的DLL來調用你的公共函數。我在一個Windows窗體應用程序中完成了這個工作,它工作正常。

2

您可能還想考慮簡單地學習C#。大多數VB.NET知道的東西都可以在C#中直接使用,因爲大多數工作都涉及到使用框架類,並且語言共享大多數功能。

這主要是句法偏好問題,雖然新的語法可能會讓你的眼睛盯緊一點,但學習曲線會很陡峭,很快你就會拋棄舊的偏好。

1

由於所有這些程序集最終都使用相同的CLR(因此名稱爲「Common Language Runtime」),因此它們可以一起使用而不會出現問題。