私はこの.NETソリューションを持っており、古いvb.netプロジェクトをいくつか取得して、それらを新しいc#プロジェクトに変換する必要があります。私は1つの特定のインターフェースに固執し、いくつかの助けが必要です。これはvb.netの署名です。
Public Interface SomeInterface(Of T as Class)
Inherits IDisposable
...
End Interface
これをC#で書くにはどうすればよいですか?
public interface SomeInterface<T> : IDisposable where T : class
{
}
public interface SomeInterface<T> : IDisposable
where T : class
{
}
SomeInterface(Of T as Class)
は C# のジェネリックSomeInterface<T>
になり、C# の制約になりますwhere T : class
。
Inherits IDisposable
C#のはただの: IDisposable
.
残りは、キーワードに小文字を使用する C# の問題です。
クラスをプロジェクトにそのまま含めるだけでよいはずです。C# リソースを使用する VB.Net プロジェクトが少なくとも 1 つあります。
public interface SomeInterface<T> :IDisposable where T:class
{
}