0

mvc4 と Web フォームの「混合と一致」について調査したところ、いくつかのリンク、特にThis one に出会いました。

global.asax コードビハインドにアクセスできない既存の webforms アプリにこれを追加したいことを除いて、実行可能のようです。アプリケーション ルートの bin フォルダーに dll をドロップして、現在の Web フォーム アプリの一部を更新します。

global.asax の application_start メソッドでできない場合、ルート、フィルター、およびバンドルを登録する別の方法はありますか?

つまり、このコードはどこに行くのでしょうか?

    protected void Application_Start()
    {
        AreaRegistration.RegisterAllAreas();

        WebApiConfig.Register(GlobalConfiguration.Configuration);
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);
        AuthConfig.RegisterAuth();
    }
4

2 に答える 2

1

なんらかの醜い方法でハッキングする必要があるため、最善の解決策は、global.asax を制御している担当者を説得して何らかのフックを提供することです。

しかし、ルートは、アプリケーションの有効期間の早い段階で一度だけ発生する限り、どこにでも登録できたので、おそらくどこかの静的コンストラクターでしょうか?

問題は、ctor を保持している型がアプリの開始時にアクセスされるようにすることです。これにより、新たな問題が発生する可能性がありますが、実行可能である可能性があります。

しかし、繰り返しになりますが、スタートアップ イベントの何らかのフックが望ましいでしょう。

于 2013-07-26T18:40:22.937 に答える
0

App_Startフォルダを見てみましょう。コードプロジェクトに関する記事によると:

「また、Global.asax から Application_Start を使用する必要がある新しいナゲット パッケージを使用するときに、Global.asax ファイルに触れないようにすることもできます」

于 2013-07-26T18:53:42.310 に答える