?? st_principal.cs
字號:
using System;
using System.Security.Principal;
using System.Collections;
using System.Globalization;
using Microsoft.ApplicationBlocks.Data;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.SessionState;
namespace STGROUP.ST_ExamBiz
{
/// <summary>
/// ST_Principal 的摘要說明。
/// </summary>
public class ST_Principal: IPrincipal
{
private ST_Identity _identity;
private string[] _roles;
private readonly string connectionString;
public ST_Principal(ST_Identity identity, string[] roles)
{
connectionString = (string)ConfigurationSettings.AppSettings["ConnString"];
if(identity == null)
{
throw new ArgumentNullException("identity");
}
_identity = identity;
if(roles != null)
{
_roles = new string[roles.Length];
for(int i = 0; i < roles.Length; i++)
{
_roles[i] = roles[i];
}
return;
}
_roles = null;
}
public string[] Roles
{
get
{
return _roles;
}
}
#region IPrincipal 成員
/// <summary>
/// 只讀屬性,返回TopGeneIdentity
/// </summary>
public IIdentity Identity
{
get
{
return _identity;
}
}
/// <summary>
/// IPrincipal.IsInRole的實現
/// </summary>
/// <param name="role">要驗證的角色名</param>
/// <returns></returns>
public bool IsInRole(string role)
{
int num1;
if(role == string.Empty || role == null)
throw new ArgumentNullException("role");
if (_roles == null)
{
return false;
}
for (num1 = 0; (num1 < _roles.Length); num1 += 1)
{
if(_roles[num1] == "Administrators")
return true;
if ((_roles[num1] != null) && (string.Compare(_roles[num1], role, true, CultureInfo.InvariantCulture) == 0))
{
return true;
}
}
return false;
}
#endregion
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -