[ASP.NET]讀取 .Net Cas Client 在 Config 中的設定值

今天同事詢問要如何讀取到 .Net Cas Client 在 Config 中的設定值呢?
需要暴力讀取config來Parse嗎?

今天同事詢問要如何讀取到 .Net Cas Client 在 Config 中的設定值呢?

.Net Cas Client 在 Config 中的如下,

 

<configuration>
  <configSections>
    <section name="casClientConfig"
		type="DotNetCasClient.Configuration.CasClientConfiguration, DotNetCasClient"/>
  </configSections>
  <casClientConfig
    casServerLoginUrl="https://server.example.com/cas/login"
    casServerUrlPrefix="https://server.example.com/cas/"
    serverName="https://client.example.com:8443"
    notAuthorizedUrl="~/NotAuthorized.aspx"
    cookiesRequiredUrl="~/CookiesRequired.aspx"
    redirectAfterValidation="true"
    renew="false"
    singleSignOut="true"
    ticketValidatorName="Cas20"
    serviceTicketManager="CacheServiceTicketManager" />
	... 其他的config 
</configuration>

 

詳細可參考  .Net Cas Client

它的Session Type是 CasClientConfiguration ,所以我們要如何取得設定值呢?

1.請先加入 DotNetCasClient.dll 參考

2.1.可以透過 CasClientConfiguration 直接來Access它的設定值,如下,

string casServerLoginUrl = 
	DotNetCasClient.Configuration.CasClientConfiguration.Config.CasServerLoginUrl;

 

2.2.透過 WebConfigurationManager取得Session後,轉型成 CasClientConfiguration 後就可以 Access 裡面的設定值,如下,

var casConfig = WebConfigurationManager.GetSection("casClientConfig") 
	as DotNetCasClient.Configuration.CasClientConfiguration;
string casServerLoginUrl2 = casConfig.CasServerLoginUrl;

 

讀取其他 config section 的設定值,也是類似的做法哦!

 

參考資料

.Net Cas Client

Custom Configuration Sections in 3 Easy Steps

Hi, 

亂馬客Blog已移到了 「亂馬客​ : Re:從零開始的軟體開發生活

請大家繼續支持 ^_^