我们有多个 DAL 项目。许多共享点列表,如反映在 C# 类中的客户、销售、提供者。我们通过一个抽象的母类使每个对象实现 IDisposable。例如,每次我们实例化一个对象以从列表中获取客户时,调用者代码都需要调用 customer.Dispose() 来处理用于实例化该对象的 spweb 和 spsite :
public Customer(int spListItemID):base(LIST_URL)
{
try
{
spli = Liste.GetItemById(spListItemID);
}
catch(ArgumentException)
{
spli = null;
}
}
在构造函数基类中实例化了 spsite 和 spweb 全局变量,并且还有 dispose 函数。
我想知道:对于整个 sharepoint 应用程序使用相同的 spweb 和 spsite 怎么样?我们所有的项目都知道一个可以按照单例模式实例化这些 spsite 和 spweb 的项目。我们将“永远”使用这个 spsite 和 spweb,我们永远不会同时关闭它们并对每个对象使用相同的,每次实例化一个对象时都保存打开 - 关闭过程!
你认为这是一个疯狂的想法,会产生影响吗?我的意思是长时间使用同一个 spweb,也就是说服务器开启的时间......这是一个坏主意吗?而不是每天为每个实例打开关闭 spweb 数千次?spweb 有有限的生存期吗?(这是一个大的共享点应用程序,上面有很多开发)