私が使用している既存のフレームワークのため、メソッド呼び出しはSortedListオブジェクトを返しています。この呼び出しの反対側を書いたので、それが実際にはSortedListであることがわかります。私はSortedListで作業を続けることができますが、ジェネリックを使用すると私の意味がよりよく伝わります。では、非ジェネリックのSortedListを適切に型指定されたジェネリックのSortedListにどのように変更しますか?
この背景には、呼び出しがSoapFormatterを使用したリモートプロシージャコールであることがあります。SoapFormatterはジェネリックを実装していません(ありがとう、Microsoft)。一部の非.Netプログラムもサービスに対して他のメソッド呼び出しを使用するため、フォーマッターを変更できません。
プロキシ呼び出しを次のようにしたいと思います。
public SortedList<string, long> GetList(string parameter)
{
return _service.GetList(parameter);
}
SoapFormatterの要件により、GetList呼び出しのインターフェイスは次のようになります。
public SortedList GetList(string parameter);