2

我有一個使用Enterprise Web Library的Web應用程序,我發現需要有一個自定義登錄頁面。我看到EWL爲我提供了一個,但我希望能夠在頁面上擁有一些自定義元素並控制用戶如何登錄。我如何在EWL中實現這一點?如何在EWL中創建自定義登錄頁面?

回答

2

首先,創建您的自定義登錄頁面。我們稱之爲MyLogIn.aspx

下一步是指定MyLogIn作爲應用程序中某些/所有頁面和快捷URL的登錄頁面。要爲頁面執行此操作,請覆蓋PageInfo.LogInPage和/或EntitySetupInfo.LogInPage並返回MyLogIn.Info參考。此設置從父頁面和實體設置繼承。如果您希望應用中的所有頁面使用MyLogIn,則只需覆蓋頁面樹根部的LogInPage屬性。

要使用MyLogIn作爲您的快捷URL,請使用ShortcutUrlResolver構造函數中的logInPageGetter可選參數。傳遞一個返回MyLogIn.Info引用的函數。

最後一步是執行MyLogIn。您可以根據需要設計頁面並收集您想要的任何憑據,但是您需要一些東西,這取決於您是否仍想使用EWL的UserManagement子系統。如果這樣做,則需要在LoadData過程中呼叫UserManagementStatics.SetUpClientSideLogicForLogInPostBack,並從DataModification中調用UserManagementStatics.LogInUserUserManagementStatics.LogInSpecifiedUser。如果您使用UserManagement爲而不是,那麼在將用戶重定向到應用程序之前,您需要負責以您自己的方式對用戶進行身份驗證,作爲DataModification的一部分。