项目用到工厂模式
public static IDocument CreateIDocument()
{
string ClassName = path + ".DocumentSQLDAL";
return (IDocument)Assembly.Load(path).CreateInstance(ClassName);
}
这段代码在本地运行一切正常,
但同样的代码用Remoting之后,就发生异常:
System.NullReferenceException: 未将对象引用设置到对象的实例。
在 Config..ctor()
在 Config.get_Instance()
在 DAL.SQLServer.DocumentSQLDAL..ctor()
--- 内部异常堆栈跟踪的结尾 ---
在 System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandle& ctor, Boolean& bNeedSecurityCheck)
在 System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean fillCache)
在 System.RuntimeType.CreateInstanceImpl(Boolean publicOnly, Boolean skipVisibilityChecks, Boolean fillCache)
在 System.Activator.CreateInstance(Type type, Boolean nonPublic)
在 System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
在 System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
在 System.Reflection.Assembly.CreateInstance(String typeName)
这是为何?
public static IDocument CreateIDocument()
{
string ClassName = path + ".DocumentSQLDAL";
return (IDocument)Assembly.Load(path).CreateInstance(ClassName);
}
这段代码在本地运行一切正常,
但同样的代码用Remoting之后,就发生异常:
System.NullReferenceException: 未将对象引用设置到对象的实例。
在 Config..ctor()
在 Config.get_Instance()
在 DAL.SQLServer.DocumentSQLDAL..ctor()
--- 内部异常堆栈跟踪的结尾 ---
在 System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandle& ctor, Boolean& bNeedSecurityCheck)
在 System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean fillCache)
在 System.RuntimeType.CreateInstanceImpl(Boolean publicOnly, Boolean skipVisibilityChecks, Boolean fillCache)
在 System.Activator.CreateInstance(Type type, Boolean nonPublic)
在 System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
在 System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
在 System.Reflection.Assembly.CreateInstance(String typeName)
这是为何?