2つのアセンブリ(外部およびローカル)があります。外部アセンブリは変更できません。外国のクラスを拡張して、ローカルインターフェイスを実装するようにしたいと思います。これはC#で可能ですか?C#:ローカルインターフェイスを実装するように外部クラスを拡張できますか?
EDIT: 私は次の操作を行うことができることを知っている:
私は(継承を使用せずに)特定のインターフェイスを実装するために、外国クラス/構造体を強制されることに興味がどのような// foreign.dll
namespace DX {
public struct Vector3 {
...
}
}
// local.dll
namespace MyDX {
public static class Extensions {
public static void MyExtensionMethod(this Vector3 vec, int index){
...
}
}
}
。私は、ジェネリッククラスの型としてのVector3を使用したい:
public class MyGeneric<T> where T: IComparable<T> {
T _value;
}
上記構造体:のVector3はIComparableを実装していませんが、私は外国人のクラスを使用できるように、私はインターフェイスを実装するためにリフレクションを使用したいです/構造体を既存の形式で(つまり、継承を使用せずに)継承が必要な場合があり...
これはできません。あなたはこれを通して達成したいことを記述できますか?私には[XY問題](http://xyproblem.info/)のように聞こえます。 – Xiaoy312
'class Local:Foreign、ILocalInterface'?インタフェースを使用する必要がある場合は、それを実装するクラスが無関係である必要があります。 – taffer
これで何を達成したいですか? – GMR516