ProfileModule.ProfileAutoSaving 事件
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
在頁面執行結束時發生 (如果自動設定檔儲存已啟用)。
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 ASP.NET 應用程式之 Global.asax 檔案中包含的事件。
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
備註
如果 ProfileManager.AutomaticSaveEnabled 屬性為 true
,則ProfileAutoSaving事件會在頁面執行結束時引發。 您可以使用ProfileAutoSaving全域事件,存取 global.asax 檔案中 ASP.NET 應用程式的 Profile_ProfileAutoSaving
類別事件ProfileModule,如本主題的範例所示。
方法 SettingsBase.Save 會 IsDirty 檢查使用者配置檔中每個 SettingsPropertyValue 屬性的屬性值,以判斷由基本類型、字串或 DateTime 對象組成的屬性是否已變更。 方法 Save 無法明確判斷自定義類別是否已變更。 您可以使用 ProfileAutoSaving 事件來判斷自定義物件是否已變更,然後繼續自動儲存已修改的物件,或取消未修改物件時自動儲存。
若要取消自動設定檔儲存作業,請將 ContinueWithProfileAutoSave 事件中的 ProfileAutoSaving 屬性false
設定為 ,否則請將 ContinueWithProfileAutoSave 屬性設定為 true
。
事件可能會有多個訂閱者 ProfileAutoSaving 。 ProfileModule將使用 屬性設定為的最後一個值ContinueWithProfileAutoSave。 因此,建議您在事件中ProfileAutoSaving明確設定 ContinueWithProfileAutoSave 屬性,無論是取消還是繼續自動儲存,因為您可能需要覆寫先前訂閱者所設定的值。