跨应用域的静态类变量
本文关键字:静态类 类变量 静态 应用 | 更新日期: 2023-09-27 17:56:36
我正在构建一个Web服务器库,到目前为止;允许php,asp.net,当然还有静态内容。
此库的主引擎位于调用可执行文件的 appdomain 中。
该库有一个类"运行时",其目的是存储不同类型的静态属性。这些属性从 exe 的应用程序域中填充。
现在,asp.net 运行时要求它位于单独的域中,这可以正常工作
ApplicationManager.CreateAppDomain(typeof(ASPHost), "/", DocumentRoot)
但是,从 asp.net 运行时(位于单独的应用程序域中)中,我无法从"运行时"获取静态属性(从 asp.net 应用程序域获取值时不会填充它们)
我对"MarshallByRefObject"没有太多经验,但我的搜索经常出现这个问题。
从"MarshallByRefObject"派生我的"运行时"类
public class Runtime : MarshalByRefObject
仍会导致空/空值。
嗯,
这是一个井喷。
我忽略了我的运行时类中有一个套接字字典的事实,所以即使我要解决这个问题......我仍然会遇到传递此类对象的问题。