有关Add和AddRange的问题(100分求答案,可以加)
AbstractSheetManager mgrInstance = ObjectHelper.CreateInstance(task.ManagerType, expMgr) as AbstractSheetManager;
我有一个类mgrInstance 我给它赋值ObjectHelper.CreateInstance(task.ManagerType, expMgr) as AbstractSheetManager;
之后
它有可能是1个参数也可能是多个参数,然后我就判断了下做了如下操作
if (mgrInstance is AbstractSheetManager[])
{
mgrInstances.AddRange((mgrInstance as IMultSheetsMgr).CreateMultiManagers());
}
else
{
mgrInstances.Add(mgrInstance);
}
IMultSheetsMgr是一个借口他里面的方法返回一个AbstractSheetManager的数组
public interface IMultSheetsMgr
{
/// <summary>
/// 返回多个表单管理器
/// </summary>
AbstractSheetManager[] CreateMultiManagers();
}
可问题是我在判断后得到的值,都是不全的。
但是如果只用Add或者只用AddRange得到的值也是不全的,这个能有什么方法解决么