これが機能する唯一のもののようです:
- .cs ファイルが App_Code 内にある場合...
- 拡張メソッドは含まれません。ビルド アクションを「コンパイル」に設定します。そうしないと、プロジェクト内の他のソース コードがその存在を認識しません。
- 拡張メソッドが含まれています。ビルド アクションを「なし」に設定します。そうしないと、と の間でへの参照
x.Foo
が曖昧であるというエラーが発生します。MyExtensions.Foo
MyExtensions.Foo
- .cs ファイルが App_Code の外の Helpers というフォルダー内にある場合、拡張メソッドが含まれているかどうかに関係なく、ビルド アクションを "Compile" に設定する必要があります。
この振る舞いがわかりません。ASP.NET MVC に App_Code に対する特別な権限が含まれているかどうかはわかりませんでしたが、含まれているように見えます... ただし、ビルド アクションが「なし」に設定?? 誰か説明してください。