ProfileModule.ProfileAutoSaving Событие

Определение

Происходит при завершении выполнения страницы, если включено автоматическое сохранение профиля.

public:
 event System::Web::Profile::ProfileAutoSaveEventHandler ^ ProfileAutoSaving;
public event System.Web.Profile.ProfileAutoSaveEventHandler ProfileAutoSaving;
member this.ProfileAutoSaving : System.Web.Profile.ProfileAutoSaveEventHandler 
Public Custom Event ProfileAutoSaving As ProfileAutoSaveEventHandler 

Тип события

Примеры

В следующем примере кода показано ProfileAutoSaving событие, включенное в файл Global.asax для ASP.NET приложения.

public void Profile_ProfileAutoSaving(object sender, ProfileAutoSaveEventArgs args)
{
  if (Profile.Cart.HasChanged)
    args.ContinueWithProfileAutoSave = true;
  else
    args.ContinueWithProfileAutoSave = false;
}
Public Sub Profile_ProfileAutoSaving(sender As Object, args As ProfileAutoSaveEventArgs)
  If Profile.Cart.HasChanged Then
    args.ContinueWithProfileAutoSave = True
  Else
    args.ContinueWithProfileAutoSave = False
  End If
End Sub

Комментарии

Событие ProfileAutoSaving возникает в конце выполнения страницы, если ProfileManager.AutomaticSaveEnabled свойство имеет значение true. Вы можете получить доступ к событию ProfileAutoSavingProfileModule класса в файле Global.asax для приложения ASP.NET с помощью глобального Profile_ProfileAutoSaving события, как показано в примере для этого раздела.

Метод SettingsBase.Save проверяет IsDirty значение свойства для каждого SettingsPropertyValue в профиле пользователя, чтобы определить, были ли изменены свойства, состоящие из примитивных типов, строк или DateTime объектов. Метод Save не может явно определить, изменился ли пользовательский класс. Событие можно использовать для ProfileAutoSaving определения того, был ли изменен пользовательский объект, а затем либо для продолжения автоматического сохранения измененных объектов, либо для отмены автоматического сохранения, если объекты не были изменены.

Чтобы отменить операцию автоматического сохранения профиля, присвойте свойству ContinueWithProfileAutoSave значение false в событии ProfileAutoSaving ; в противном случае задайте для свойства значение ContinueWithProfileAutoSavetrue.

На событие может быть несколько подписчиков ProfileAutoSaving . будет ProfileModule использовать последнее значение, ContinueWithProfileAutoSave которое задано свойству. Поэтому рекомендуется явно задать ContinueWithProfileAutoSave свойство в ProfileAutoSaving случае отмены или продолжения автоматического сохранения, так как может потребоваться перезаписать значение, заданное предыдущим подписчиком.

Применяется к

См. также раздел