私は自分のドメインで使用しているIDeviceIdというインターフェースを持っています。 IDeviceIdを実装する具体的なクラスもいくつかあります。各具象クラスには、特定のタイプのロジック(DeviceId)が含まれています。たとえば、DeviceMacIdがあります。これは単に有効なMACアドレスです。もう1つの具体的なクラスはDeviceShortMacIdです。これは有効なMACアドレスの最後の6桁を取り、固定された6文字のプレフィックスと組み合わせて有効なMACを作成します(いくつかのレガシーアプリケーションでは最後の6桁のみを使用します)。私はIDを表現するためのいくつかのクラスを持っていますが、それらの大部分はすべて同じデータの派生物です。オブジェクトを別のオブジェクトに変換するにはどうすればよいですか?
私はこれらのクラスのいずれかから別のクラスに簡単に変換できるようにしたいと思います。私の最初の考えは、静的クラスを作成し、DeviceIdConverter.ToDeviceShortMacId(IDeviceId)のようなことをすることでした。
データを1つのフォームで簡単に受け入れ、繰り返し可能な方法で複数のアプリケーションに渡って別のフォームに簡単に変換できるようにするにはどうすればよいですか?
私の究極の解決策はより複雑になりました(そしてドメイン固有のもの)。しかし、このアプローチは私にとって最も効果的でした。これ以外にもこのスレッドにはたくさんの良いオプションがあります。 – GregB