想象一下,我想编写以下代码:
foreach (var usrRrCashBudgetItem in items)
{
using (var graph = CreateInstance<CashBudgetItemEntry>())
{
graph.BudgetItem.Current = usrRrCashBudgetItem;
graph.ApproveDocument();
}
}
如果我尝试,编译器会告诉我它不能隐式转换类型&#39; CashBudgetItemEntry&#39;到&#39; System.IDisposable&#39;。
然后让我说我尝试另一种方法:
((IDisposable)graph).Dispose()
在这种情况下,在运行时我得到另一个错误:无法投射&#39; graph&#39; (其实际类型为&#39; ......&#39;)至System.IDisposable&#39;这意味着GC使用Finalizer来填充PXGraph。 所以我的问题是如何在普通的foreach循环中管理PXGraph的生命周期?