この質問は、プロジェクトの要件や問題よりも好奇心からのものです。
1つの言語(C#など)で非CLS準拠のコードを使用していて、現在の言語でのみ(プロジェクト全体で、内部を作成することは選択できません)、そのように使用する必要があります。同時に、許可する必要があります。コンパイル時エラーを生成せずに競合する実装を呼び出すことができる他の言語(VBなど)。
例えば、
//C#
public class SecurityService
{
....
public void Print()
{
Console.WriteLine("print"); //This method prints Service Name in lower case
}
public void PRINT()
{
Console.WriteLine("PRINT");//This method prints service name in UPPER case.
}
}
'VB.Net
Module ServiceReader
Sub Main()
Dim service As New SecurityService()
service.print() 'Compile time error: print is ambiguos
End Sub
End Module
問題:クロスランゲージプロジェクトから「print」メソッドの1つを何らかの方法で非表示にすることで、ここでコンパイル時エラーを回避する必要があります(C#プロジェクトが目的の実装を呼び出せるようにします)。
ご関心をお寄せいただきありがとうございます。