C# 是否可以在.net 1.1和.net 4.0应用程序之间共享应用程序数据
这个问题可能很傻,因为我对框架1.1不太了解 我试图在两个不同的.net应用程序之间共享应用程序级别变量。 一个是.NET1.1,另一个是.NET4.0 以下是场景: 我已经使用VisualStudio2003创建了一个应用程序(C# 是否可以在.net 1.1和.net 4.0应用程序之间共享应用程序数据,c#,asp.net,.net,C#,Asp.net,.net,这个问题可能很傻,因为我对框架1.1不太了解 我试图在两个不同的.net应用程序之间共享应用程序级别变量。 一个是.NET1.1,另一个是.NET4.0 以下是场景: 我已经使用VisualStudio2003创建了一个应用程序(App11),它的目标是.NETFramework 1.1。 我还创建了一个网站(App40),目标是Visual Studio 2010中的.Net Framework 4.0 我在App11中添加了App40,我在iis5.1中托管了App11。现在App40是Ap
App11
),它的目标是.NETFramework 1.1
。
我还创建了一个网站(App40
),目标是Visual Studio 2010中的.Net Framework 4.0
我在App11
中添加了App40
,我在iis5.1中托管了App11
。现在App40
是App11
中的一个文件夹
App40
具有框架4.0的应用程序池,App11
具有框架1.1的应用程序池
我对.netframework1.1
了解不多。所以,我在谷歌上找到了。框架1.1似乎支持应用程序状态
我认为应用程序管理会起作用。所以,我试过这样做:
//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
中,我在Global.asax
的Application\u Start()
中定义了一个应用程序变量
protected void Application_Start(Object sender, EventArgs e)
{
Application["AppDATA"]="Application Data";
}
我在App11
应用程序中有一个Default.aspx
页面。默认页面有一个可重定向到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
声明
当我点击链接时,我看不到任何来自Framework1.1的应用程序数据,它只显示应用程序状态failed to work代码>页面上的消息
这行吗?还是我在做这些蠢事
除了我所做的事情之外,我还需要设置什么吗?据我所知,您的应用程序级变量位于应用程序级,因此,如果您有两个不同的应用程序,那么它们不共享变量似乎很合理。
我认为您需要使用文件、数据库甚至Web服务在不同的应用程序之间共享数据…不,您不能只在指定的应用程序之间共享数据(至少我知道这一点)
您需要将数据存储到外部位置,如XML文件。一个应用程序将数据写入文件,另一个应用程序可以读取数据。或者你可以让他们做同样的事情
您还可以使用数据库来存储数据。这也可以像我提到的XML文件那样工作
我希望我能帮上忙。不可能用你目前的方式来做。与具有不同模式(内存、sql、会话服务器)的会话状态不同,应用程序状态为。不同应用程序池中的应用程序在不同的进程中运行,因此无法直接共享此信息。您需要将数据存储在一个进程中,并使用某种IPC。有很多可能性:SQL、远程处理、WCF、web服务等
请注意,即使它们位于同一应用程序池中,它们也不会自动共享应用程序状态,因为它们将在不同的应用程序域中运行。但是如果没有操作系统隔离,它们之间的共享会更容易。在应用程序之间共享状态的唯一方法是某种持久性(数据库、cookie、查询字符串…)相关/有用吗?和