2009-09-14 3 views
6

継承時にMustOverrideプロパティを持つメンバーを強制的に組み込むことはできませんか?私はカスタムMembershipProviderに取り組んでいます。私はいくつかのメンバーにアクセスする必要があります。それは純粋に審美的なものです。私は100行の未使用メンバー宣言をスタブする必要がありません。ちょうど興味深い、C#でMustOverrideの周りにどのような方法?

答えて

13

継承したクラスを右クリックして[実装する]を選択すると、メソッドのコードを書き換えるまでNotImplementedException()をスローするメソッド定義が作成されます。

+0

Spiffy!それは時間を節約します。ありがとう。 –

5

いいえ、ありません。
Btw、MustOverrideは、通常、C#でabstractと呼ばれます。

+6

通常は呼ばれませんが、ISが呼び出されます。 – Will

7

MustOverride(C#のabstract)は、オーバーライドする必要があることを指定します。これを回避する方法はありません。

Visual Studioに機能をスタブすることはできますが、クラスをインスタンス化するためには存在する必要があります。

その他のオプション:複数のバージョンを実行する場合は、メンバーを実装するクラスを作成して(NotImplementedExceptionをスローする、または何もしないで)、THATクラスから派生させることができます。あなたの具体的なバージョンは、あなたが望む特定のメソッドをオーバーライドする必要があります。

2

はいあります...抽象クラスとして宣言してください。 :-P

今、真剣に考えてみてください。非抽象クラスに抽象メンバを実装しない場合は、実行時に、実装なしでメソッドを呼び出すときに何が起こるか想像してみてください。 C++ではこれが可能で、 "純粋仮想関数呼び出し"エラーが発生します。

関連する問題