値型間で値をコピーする汎用メソッドがあります。次のアプローチでは、構造体の制約があっても、設計時エラーが発生します。どのように私は値の間にコピーまたはキャストすることができますか?値型制約付きの汎用宣言型のコピー方法
private Ttgt MyMethod<Tsrc,Ttgt>(Tsrc SourceObject)
where Tsrc : struct
where Ttgt : struct
{
//Error:cannot implictly convert type 'Tsrc' to 'Ttgt'
Ttgt returnObject = SourceObject;
//Error:Cannot convert type 'Tsrc' to 'Ttgt'
Ttgt returnObject = (Ttgt)SourceObject;
return returnObject;
}
を私は再帰的なオブジェクト間マッパーを書いています:
はまた、あなたがこの操作を行うことができることに注意してください。 WCF実装の基本的なビジネスロジッククラスからコントラクトクラスを分離することです。実装クラスは契約とほぼ同じですが、私はその2つの間に依存関係を導入したくありません。 –
これは言うべきです:タイプtargetType = typeof(Ttgt); –
ありがとうございます。変数名が正しく更新されました。 – PHeiberg