4

拡張メソッドを含む2つのプロジェクトがあります。1つのプロジェクトはC#を使用して実装され、もう1つはVB.NETを使用して実装されます。これは、VB.NETではC#ではできないことがいくつかあり、それらの機能を拡張メソッドで活用したいためです。

プロジェクトに名前を付けてその意味を伝えると同時に、異なる言語で実装されていることを区別するにはどうすればよいですか?

C#エリート主義者の場合:

VB.NETがC#でサポートしていない機能の1つは、次のとおりです。

C#拡張メソッドでは、参照によるパラメーターの受け渡しはできませんか?

参考:これは、私が興味を持っている参照型では機能しません。

public static void LoadFromXml<T>(this T targetObject, string xml)
{

    targetObject = _Serializer.DeserializeFromXML<T>(xml);

}
4

2 に答える 2

5

プロジェクトに名前を付けてその意味を伝えると同時に、異なる言語で実装されていることを区別するにはどうすればよいですか?

私は実際にはこれを伝えません。両方のプロジェクトに、それ自体で意味のある名前を付けます。各プロジェクトは両方の言語で使用できる必要があるため、プロジェクトの作成に使用された言語に関係なく、名前は意味をなす必要があります。

于 2012-06-12T19:56:14.590 に答える
2

ああ...あなたのコメントを見ただけです。ほとんどの拡張メソッドをC#で実装して「コア」と呼び、次にVB.NETで追加機能を実装して「拡張」と呼ぶことをお勧めします。

次に、VB.NETで明示的にCoreを参照し、それを継承します。その後、ユーザーはコアアセンブリをほとんどのタスクに使用したり、拡張機能を追加機能に使用したりできます。

編集:アセンブリを分割しない方法を考え出した場合でも、ユーザーの方が良いと思いますが、明らかに、要件/実装の詳細のすべてを知っているわけではありません。

于 2012-06-12T19:51:04.267 に答える