“对象已断开连接或在服务器上不存在”例外
|
我需要在我的应用程序中使用跨应用程序域调用,有时我会遇到以下RemotingException:
服务器\ /2fa53226_da41_42ba_b185_ec7d9c454712/ygiw+xfegmkhdinj7g2kpkhc_7.rem \已断开连接或在服务器上不存在。
目标对象仍然存在,我已经检查了它。
UPD我已经在目标对象的终结器中设置了断点,但是它从未命中。因此,该对象是活动的,并且没有被GC处理。
没有找到相关结果
已邀请:
7 个回复
感秆暴壳
墩瓣茅械
街茬
然后我像这样使用“自定义赞助商”:
PluginProxy类型具有对实际插件类型的引用。实际上,PluginProxy是在Plugin AppDomain中实例化的,并返回到主AppDomain,以允许它调用Plugins,即使它忽略了它们的真实类型。因此,必须从主AppDomain访问的PluginProxy必须进行序列化以突破AppDomains限制。我遇到了一个问题,因为我没有赞助这些MarshalByRefObject(s):
这是一堆很难解决的问题,希望对您有所帮助! 参考文献: MSDN:ILease接口 MSDN:ObjRef类 Microsoft:如何使用Visual C#通过引用将对象封送至远程服务器 StackOverflow:远程发起者不再被调用 StackOverflow:ISponsor和ILease接口如何工作? StackOverflow:如何在两个.NET AppDomain之间传递未知类型? StackOverflow:AppDomain和MarshalByRefObject的生存时间:如何避免RemotingException? StackOverflow:即使赞助,MarshalByRefObject也会“在服务器上断开连接”
攫怂绵十
我们一直在使用它作为私有变量,它为自定义的外部逻辑加载和卸载了一些dll。 答案已从此处获取:msdn答案 由于我们无法在生产时更改此设置,因此以折衷的方式进行了折衷,即以随机间隔重新启动Windows服务,该间隔短于静态AppDomain变量的生存期,通过反复试验,我们发现该间隔为几天。 这个问题也有助于弄清有关生命周期的一些问题:stackoverflow-question
稍惮
届甸衬丝蚕
文件夹中的SQL LocalDB发生的。每当我尝试使用Package Console运行ѭ6来通过迁移初始化我的Entity Framework数据库时,都不会发生任何事情。然后过了一会儿,我得到了那个错误。 我通过修改
的文件权限来解决此问题。一旦修复,瞧,它就起作用了。
桔马牛
以返回null 使用ѭ9可使您的物体存活更长的时间。