最後,解決方案很簡單,很容易找到,但很難找到。
Episerver使用字典存儲提供程序的功能,默認情況下會添加默認提供程序(如SqlMembershipProvider和WindowsMembershipProvider)。字典的關鍵是提供者類型(Episerver 6)。
添加新條目的方法是公開的,所以我們只需將以下代碼添加到Global.asax.cs。
protected void Application_Start(object sender, EventArgs e)
{
RegisterCapabilitiesOnMembershipProviders();
}
private static void RegisterCapabilitiesOnMembershipProviders()
{
ProviderCapabilities.AddProvider(typeof(CustomActiveDirectoryMembershipProvider), new ProviderCapabilitySettings(0,new string[0]));
ProviderCapabilities.AddProvider(typeof(CustomActiveDirectoryRoleProvider), new ProviderCapabilitySettings(0, new string[0]));
}
這增加了我們的自定義成員資格和角色提供到字典中沒有的功能,這意味着所有的創建用戶和角色/編輯被禁用。
以下操作可用:更新,創建,刪除。如果你只是想更新,並在您更換0與此:
ProviderCapabilities.Action.Update | ProviderCapabilities.Action.Create
行動枚舉具有屬性標誌。