2016-07-07 4 views
0

を乾燥させるためにつながります私が何かを逃していなければ、内部インターフェースを採用することは必然的にこの種のDRY違反につながることになります。代わりに、Personクラスをパブリックにすることです。内部インターフェイスは、私は、次のしている違反

何か不足していますか?

+0

なぜ修正は "as as cast"を使わないのですか? –

+0

ユースケースに応じて、可能性があります。それはちょうど馬鹿だと感じます。 –

答えて

0

この場合、実際には2つの方法は必要ありません。 「IGetPerson」を取り出してください。 (ポイントを含む)を最初のオーバーライドから削除し、2番目のメソッドを取り出します。 VS 2015のクイックアクションを使用している場合は、「インターフェイスを明示的に実装する」ではなく「インターフェイスを実装する」を選択してみてください。

+0

が作成されません。問題は、GetPersonはインターフェイスを実装するために公開する必要がありますが、Personは公開されていないため公開できないということです。 –

+0

私は参照してください。インターフェースを静的なクラスにすることができるので、内部メンバーを持つことができ、 "person"をパブリックにしたり、Catを内部にしたり、提案したようにすることができます。この場合、ドライ違反はそれほど単純ではない私はそれについてあまり心配しません。 – mousetail

関連する問題