7

App_Code フォルダーのサブフォルダーにクラス ファイルを配置すると、次のエラーが発生します。

errorCS0246: 型または名前空間名 'MyClassName' が見つかりませんでした (using ディレクティブまたはアセンブリ参照がありませんか?)

このクラスは名前空間にはまったくありません。何か案は?

4

6 に答える 6

20

web.config のコンパイル要素に codeSubDirectories を追加する必要があります。

<configuration>
    <system.web>
      <compilation>
         <codeSubDirectories>
           <add directoryName="View"/>
         </codeSubDirectories>
      </compilation>
   </system.web>
</configuration>
于 2008-09-30T21:22:47.773 に答える
16

ファイルの BuildAction プロパティを確認します。これは「コンパイル」に設定する必要があります

于 2011-08-16T18:11:12.350 に答える
1

IIS (または Web サーバー) でフォルダーをアプリケーションとして設定していない可能性はありますか? そうでない場合、使用される App_Code は、フォルダー (またはその上の次のアプリケーション) からのものです。

フォルダーがアプリケーションとしてマークされ、正しいバージョンの ASP.NET が使用されていることを確認してください。

于 2008-09-30T21:11:28.237 に答える
1

正しい方法ではないかもしれませんが、私はそれが最も簡単だと思います。

通常どおりメイン フォルダーにクラスを作成し、マウスでサブフォルダーに移動します。再コンパイルすると、すべてうまくいくはずです。

于 2011-11-08T07:57:39.217 に答える
0

As you add folders to your app_code, they are getting separated by different namespaces, if I recall correctly, using the default namespace as the root, then adding for each folder.

于 2008-09-30T21:21:41.863 に答える
0

Visual Studio (少なくとも 2010 年ですが、過去のバージョンも思い出す) では、ソリューション エクスプローラー内でフォルダーを右クリックし、[プロジェクトに含める] を選択できます。

次に、各ファイルの [プロパティ] タブ (または一度にすべてを選択) で、[ビルド アクション] プロパティに [コンパイル] を選択します。

これは私にとってはうまくいきました。

于 2012-07-13T22:57:25.937 に答える