Spero che questo sia il forum appropriato per porre questa domanda.
Un gruppo di colleghi e io appena iniziato ad apprendere C # alcune settimane fa e stiamo pianificando una discussione sull'interoperabilità linguistica.
Quindi, sto cercando esempi noti / classici di problemi di interoperabilità linguistica .Net. Come questo, dove l'insensibilità al caso di VB.Net rende un metodo C # sovraccarico incompatibile.
In C #
public class Foo
{
public void foo() { }
public void fOO() { }
}
In VB.Net
Public Class Bar
Sub Bar()
Dim foo As Foo
foo = New Foo()
foo.foo(); //compiler error
End Sub
End Class
O questo in cui una parola chiave VB.Net viene utilizzata in un nome di metodo C #:
In C #
public class Foo
{
public virtual void Stop() { }
}
In VB.Net
Public Class Bar
Inherits Foo
Public Overrides Sub Stop() 'compiler error
End Sub
End Class
Mi piacerebbe raccogliere qualche altro esempio di questo tipo di problemi.
Qualcuno conosce altri casi interessanti di trucchi per l'interoperabilità linguistica?
Ho usato C # e VB.Net in questi esempi, ma qualsiasi problema di interoperabilità linguistica .Net sarà altrettanto valido per arricchire una discussione sull'argomento.