2011-07-16 61 views
1

我正在構建一個Messenger類庫。登錄後,您可以通過msgrinstance.Users訪問一組用戶對象列表。這些用戶具有諸如LoginName,FriendlyName,DisplayPicture等屬性。主連接關閉時訪問用戶類的屬性

如果嘗試在註銷後訪問.Users,則會引發NotLoggedInException。對於在登錄時創建的任何用戶類,如果嘗試訪問其任何屬性,您將再次獲得NotLoggedInException。

這是做事的好方法嗎?也許對於用戶屬性,我應該拋出InvalidOperationException,因爲用戶類不再與主Messenger類連接?

回答

1

不是在任何ptoperty中添加控件,而是在一個函數中添加一個控件,該函數從對象請求該信息,或者僅在應用程序註銷後清除用戶集合。

或者,如果你只是因爲某種原因想要在註銷後有用戶列表,我個人建議不要拋出異常,但返回一些「無效」值。

編輯:

如果客戶持有的只是一個用戶對象時,它不能創建問題的refence,如果不是因爲GC集合,但它絕對可以在它決定用它做什麼了一下產生問題,所以調用一個函數,以便在您的API訪問中添加錯誤處理。

希望這會有所幫助。

問候。

+0

我正在清除註銷時的列表。但有人仍然可以參考用戶對象。 – NoPyGod

+0

但是,這些用戶對象只是虛擬持有者還是附加了som功能?我試着說,對我來說,最好在你的API函數中添加錯誤處理(異常或其他)。 – Tigran