私は、ASP.NETでページクラスを拡張していくつかの新しい機能(いくつかのメソッドがそのコードのコード内で直接呼び出されるため使いやすい)を追加しようとしています。私はbase.SetQuery
を入力した場合継承に関する奇妙な拡張メソッドの問題
SetQuery
呼ばれる
、私はPageクラスにSetQuery
を入力すると、それが認識されない
(はい、私はusing [Namespace];
を追加しました)、
それは見ている:mは奇妙なエラーを取得しますIntelliSenseでは、私はを入力した場合、メソッドや拡張メソッドがページに実際に見つからないと言ってコンパイルしません。
0それは認識され、動作します。
特に、2番目のケースはIntelliSenseが拡張メソッドとして認識しているものの、コンパイルされていないため、バグであるようです。
キャストなどを使わずに、SetQueryとタイプするのはもっと自然な方法ですか?
私は拡張メソッドをかなり使用していましたが、私はそのクラス自体の中でそれらを呼び出すことはなかったと思います。しかし、Intellisenseがその方法を示しているのはまだ私にはバグかもしれませんが、Intellisenseから書いたときにはコンパイルされません。 –
@はい、それはintellisenseバグのように傷ついています - 同意しました –
FYI:それはC#のみです。 VBでは暗黙のthisを使用することができます。 –