Удалите объекты SPWeb, используемые в приемнике объектов, который создает веб-сайты - PullRequest
0 голосов
/ 12 октября 2011

У меня есть приемник функций (scope = web), который создает веб-сайты ниже сети, где эта функция активирована. Используется для решения проблем установки приложения.

Необходимо ли удалять созданные дочерние веб-сайты, если они возвращаются из моего метода createSubwebs (SPWeb web), который вызывается в приемнике функций?

1 Ответ

1 голос
/ 12 октября 2011

Предполагается, что вы создаете сети через SPWebCollection.Add, краткий ответ - да . SPWeb объекты, возвращаемые SPWebCollection.Add, всегда должны быть утилизированы.

Подробнее см. В статье Удаление объектов Статья MSDN.

Edit: Для уточнения «возвращено для дальнейшего использования». Предположим, у вас есть служебный класс WebCreator с методом CreateWeb. Этот метод создает сеть и возвращает эту сеть.

public class WebCreator
{ 
  public static SPWeb CreateWeb(SPWeb parent, string name)
  {
    return parent.Webs.Add(name);
  }
}

Мы не должны располагать объект SPWeb в методе CreateWeb, так как он будет использоваться вызывающей стороной. Тем не менее, вызывающий объект несет ответственность за удаление объекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...