0

私はしばらくの間この問題を抱えています。コードビハインドファイルからタイプをロードできません。

例えば:

<%@ Application Codebehind="~/App_Code/GlobalAsax.cs" Inherits="BaseGlobal.GlobalAsax" Language="C#" %>

これが私のc#GlobalAsax.csファイルです。

namespace BaseGlobal
{
    public class GlobalAsax : System.Web.HttpApplication
    {
        //code in here... 
    }

}

特定のエラー:

タイプBaseGlobal.GlobalAsaxをロードできません

エラーが発生するのはなぜですか?私はこれを理解しようとしてきました。注:これはウェブアプリではなくウェブサイトプロジェクトです。

みんなありがとう!

4

5 に答える 5

2

頭のてっぺんから...

1)Src属性を追加してみましたか?

Src="~/App_Code/GlobalAsax.cs"

2)分離コードクラスをプリコンパイルしましたか?

3)パスが正しいパスに解決されていますか?確認のために絶対パスを使用してみましたか?

于 2013-01-31T14:53:45.780 に答える
0

codebehind属性にURLの代わりに相対ファイルパスを使用してみてください。好きApp_Code\GlobalAsax.cs

于 2013-01-28T16:23:53.597 に答える
0

私が行ったすべての作業で、Global.asaxはディレクティブのcodebehind属性を使用しません。Application属性には、完全修飾クラス名(完全な名前空間を含む)を指定しInheritsていることを確認してください。これは、プロジェクトのプロパティに設定した内容に大きく依存します。「ルート名前空間」の値を調べて、属性にさらに何かを含める必要があるかどうかを確認します。Inherits

注:[ルート名前空間]フィールドの正確な名前と場所は、使用しているプロジェクトの種類とVisualStudioのバージョンによって異なる場合があります。

于 2013-01-31T14:52:34.033 に答える
0

Webプロジェクトの出力パスを変更します。bin \ debugに設定されていますが、出力パスが単に「bin」に設定されていない限り、Webプロジェクトは機能しません。

于 2013-01-31T15:04:46.583 に答える
0

コードファイルがApp_Codeにある場合、CodeBehindを指定する必要はありません。次のことを試してください。

<%@ Application Inherits="BaseGlobal.GlobalAsax" %>
于 2013-01-31T15:05:16.453 に答える