デフォルトでは、C# ではすべてのクラスがToString()
メソッドを継承します。私が抱えている問題は、職場で を使用しautomapper
て一部のドメイン オブジェクトをフロント エンドにマップしていることです。次の sudo によく似たコードが表示され続けます。
string:mapToclass.name <- mapFromClass
問題は、文字列がからマップされることを期待しているにもかかわらず、自動から文字列へのメソッドでタイプが送信されていることです。正しいコードは次のようになります。
string:mapToclass.name <- mapFromClass.name
残念ながら、メソッドの自動継承により、ToString
これらは両方ともコンパイルおよび実行されます。実装されていない例外をスローするために文字列をオーバーライドする可能性がありますが、それは適切な設計ではなく、lsp を壊します。さらに、コンパイル時にエラーをキャッチしないため、より理想的です。
これを強制する方法はありますか?