簡體   English   中英

在Web.Config中以編程方式更改成員資格提供程序的屬性

[英]Change Attribute Of Membership Provider Programmatically In Web.Config

我的web.config中有以下defaultmembership提供程序

<add name="UmbracoMembershipProvider" type="umbraco.providers.members.UmbracoMembershipProvider" enablePasswordRetrieval="false" enablePasswordReset="false" requiresQuestionAndAnswer="false" defaultMemberTypeAlias="Another Type" passwordFormat="Hashed" />

我試圖以編程方式將enablePasswordResetfalse更新為true但是我正在努力..這就是我所擁有的!

ConfigurationManager.OpenWebConfiguration(Request.ApplicationPath);
var section = (MembershipSection)config.GetSection("system.web/membership");

var defaultProvider = section.DefaultProvider;
var providerSettings = section.Providers[defaultProvider];

// Now what?

現在我無法弄清楚如何獲取屬性並更新它? 任何提示/例子非常感謝。

我想到了

        var config = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath);
        var section = (MembershipSection)config.GetSection("system.web/membership");

        var defaultProvider = section.DefaultProvider;
        var providerSettings = section.Providers[defaultProvider];
        providerSettings.Parameters.Set("enablePasswordReset", "true");
        config.Save();

我建議創建一個自定義成員資格提供程序並使用其他來源進行設置。 更改設置可能很危險; 我認為這是一個用戶曝光的功能,允許管理員打開或關閉它?

如果您可以創建自定義成員資格提供程序,從數據庫或XML文件中提取信息,然后允許該功能。 不確定放置此代碼的確切位置,取決於您是使用ASP.NET控件,還是使用API​​自定義...

HTH。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM