2

現在、 VB.NETを使用してビルドされたアプリケーションが 1 つあります。

既存のVB.NETアプリケーション内にC# コードを追加する必要がありましたが、可能ですか?

4

6 に答える 6

9

C# コード用に別のプロジェクトを作成します。次に、C# プロジェクトへの参照を VB.Net プロジェクトに配置します。その後、VB.Net で記述されているかのように C# オブジェクトにアクセスできます。

于 2012-04-04T10:24:41.213 に答える
2

いいえ。ソリューション内に別のプロジェクトを作成し、その中にコードを配置する必要があります。プロジェクトがクラス ライブラリの場合、元のプロジェクトはそれを参照してライブラリ ルーチンを呼び出すことができます。それができない場合は、利用可能なオンラインの C#<->VB.NET コンバーターがたくさんあります。

于 2012-04-04T10:25:40.547 に答える
2

同じプロジェクトに異なる言語を追加することはできませんが、両方のプロジェクトを同じソリューションに追加し、C# プロジェクトから VB プロジェクトへ、または VB プロジェクトから C# プロジェクトへの参照を追加し、彼が作成した型を使用できるはずです。 -もちろん、それらが公開されている限り。

このアプローチに従ってください:
1)マルチプロジェクト ソリューションを作成する

2) プロジェクトに CSharp プロジェクトの参照を追加します。

次に、これらのクラス/フォームなどのオブジェクトを作成し、CSharp プロジェクトで作成したメソッドに次のようにアクセスできます。

Dim obj As New YourCSharpProject.SomeClass()
obj.UpdateData()

参照: C# フォームから VB フォームを起動する

于 2012-05-08T11:13:31.627 に答える
2

他の人が言ったように、コンパイラはそれが書かれた言語のみを理解するため、2 つの言語を直接混在させることはできません。したがって、MS が拡張機能を作成しない限り、VB.NET コンパイラは C# コードを理解できません。このようなものは私の想像から来ています:) -

Dim v as int
%for(int i = 0; i < $v; ++i){}% 
于 2012-04-04T10:54:25.173 に答える
1

はい、別のクラス/ページ/Web コントロール/ユーザー コントロールであり、C# として指定されている限り。Visual Studio はそれを好まないでしょう。VS での簡単な方法は、ソリューション内で新しいプロジェクトをセットアップすることです。

于 2012-04-04T10:25:35.107 に答える
1

ちょっとした C# コードの場合は、最初にhttp://www.developerfusion.com/tools/convert/csharp-to-vb/のようなコンバーターを使用して VB.NET に変換するか、手動で変換することができます。

それ以外の場合は、既に説明したように、C# コードを同じソリューション内の別のプロジェクトに配置する必要があります。その後、同じソリューションで VB.NET コードから C# コードを呼び出すことができます。

于 2012-04-04T15:26:35.873 に答える