WCF服务验证:UserNamePasswordValidator的用法
请教下,怎么把静态的服务验证改为动态的连接数据库验证?
原始数据如下:
public class MyUserNamePasswordValidator : UserNamePasswordValidator
{
//#region 声明变量
//DBHelper DBHelper = new DBHelper();
//#endregion
public override void Validate(string str_userName, string str_password)
{
try
{
if (str_userName != "admin" || str_password != "admin")
{
Console.WriteLine("UserNamePassword Validatation is failed !:{0}", str_userName);
throw new SecurityTokenException("Unknown Username or Password");
}
else
{
Console.WriteLine("UserNamePassword Validatation is sucessfully !:{0}", str_userName);
}
}
catch (Exception)
{
throw;
}
}
}
---------------------------------------------
自己修改的如下:
/// <summary>
/// 测试
/// </summary>
/// <param name="str_userName"></param>
/// <param name="str_password"></param>
/// <returns></returns>
public IList<RMSLoginRoleLoadInfo> SelectLogin(string str_userName, string str_password)
{
try
{
string sql = "SELECT COUNT(*) FROM [dbo].[RMSLogin] WHERE [nvcLogin] = '" + str_userName + "' AND [nvcPwd] = '" + str_password + "'";
if (sql != "")
{
return DataTableExtensions.ToList<RMSLoginRoleLoadInfo>(DBHelper.DTable(Commands.DBName, sql));
}
}
catch (Exception)
{
throw;
}
}