0

フレームワーク1.1についてあまり知識がないので、質問はばかげているかもしれません

2 つの異なる .net アプリケーション間でアプリケーション レベル変数を共有しようとしています。1 つは .net 1.1 で、もう 1 つは .net 4.0 です。

シナリオは次のとおりです。

Visual Studio 2003 をターゲットとするアプリケーション ( App11) を作成しました。また、Visual Studio 2010をターゲットとする Web サイト ( )も作成しました。.Net Framework 1.1App40.Net Framework 4.0

に を追加しましApp40た。IIS 5.1 でApp11ホストしています。App11App40は のフォルダですApp11

App40にはフレームワーク 4.0App11のアプリケーション プールがあり、フレームワーク 1.1 のアプリケーション プールがあります。

の知識はあまりありません.Net Framework 1.1。だから、私はググって.Net Framework 1.1の状態管理技術を見つけました。Framework 1.1 は Application State をサポートしているようです

アプリケーション管理が機能すると思いました。だから、私はこのように試しました:

のでApp11Application 変数を定義しました。Application_Start()Global.asax

protected void Application_Start(Object sender, EventArgs e)
        {
            Application["AppDATA"]="Application Data";
        }

私はアプリケーションのDefault.aspxページを持っていApp11ます。デフォルト ページには、ページにリダイレクトするためのハイパーリンクがありApp40/Default.aspxます。

のコードビハインド ファイルでは、次のDefault.aspxようApp40にしました。

//Application State check
        if (Application["AppDATA"] != null)
        {
            applicationState.Text = "Got application state data :"+Application["AppDATA"].ToString();
        }
        else
        {
            applicationState.Text = "Application State failed to work !";
        }

私は両方のアプリケーションを構築し、既定のページをApp11.

リンクをクリックすると、Framework 1.1 から取得したアプリケーション データが表示されずApplication State failed to work !、ページにメッセージのみが表示されます。

これは機能しますか?または私はこれらのことを愚かにしようとしていますか?

私が行ったことに加えて何かを設定する必要がありますか?

4

4 に答える 4

0

アプリケーション間で状態を共有する唯一の方法は、ある種の永続性 (データベース、Cookie、クエリ文字列など) です。

于 2013-04-03T16:12:17.273 に答える
0

あなたがしようとしている方法でそれを行うことは不可能です。異なるモード (メモリ内、SQL、セッション サーバー) を持つセッション状態とは異なり、アプリケーションの状態は常にメモリに格納されます。異なるアプリケーション プール内のアプリケーションは異なるプロセスで実行されるため、この情報を直接共有することはできません。データを 1 つのプロセスに保存し、ある種の IPC を使用する必要があります。SQL、Remoting、WCF、Web サービスなど、多くの可能性があります。

それらが同じアプリケーション プールにあったとしても、異なるアプリ ドメインで実行されるため、自動的にアプリケーションの状態を共有しないことに注意してください。ただし、OS の分離がなければ、それらの間で共有する方が簡単です。

于 2013-04-03T16:06:54.757 に答える
0

いいえ、指定したアプリケーション間で単純にデータを共有することはできません (少なくともそれは私が知っていることです)。

XML ファイルなどの外部の場所にデータを保存する必要があります。1 つのアプリケーションがデータをファイルに書き込み、別のアプリケーションがそれを読み取ることができます。または、両方に同じことをさせることもできます。

データベースを使用してデータを保存することもできます。これは、XML ファイルで述べたように機能します。

私が助けてくれることを望みました。

于 2013-04-03T12:13:28.140 に答える