⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chatter.cs

📁 Windows CE Web应用MobileQQ
💻 CS
字号:
using System;
using DateAccessLayer;
using System.Data.SqlClient;
using System.Data;
namespace MobileQQBusinessLaryer
{
	/// <summary>
	/// Class1 的摘要说明。
	/// </summary>
	/// 

	public class Chatter
	{
		private int m_id;
		private string m_loginName;
		private byte[] m_password;
		private string m_name;
		
		private Chatter(int id , string loginName , byte[] password , string name)
		{
			m_id = id;
			m_loginName = loginName;
			m_password = password;
			m_name = name;
			//
			// TODO: 在此处添加构造函数逻辑
			//
		}

		public static string Register(string loginName , string password , string name)
		{
		
			SqlCommand cmd= DataCommand.BuildStoredProcCmd("spaddchatter");
			cmd.Parameters.Add(DataCommand.BuildParameter("@LoginName",SqlDbType.VarChar,20,ParameterDirection.Input,loginName));
			byte[] hashedPwd = HashedPassword(password);
			cmd.Parameters.Add(DataCommand.BuildParameter("@password",SqlDbType.Binary,20,ParameterDirection.Input,hashedPwd));
			cmd.Parameters.Add(DataCommand.BuildParameter("@name",SqlDbType.VarChar ,20,ParameterDirection.Input,name));
			cmd.Connection.Open();
			string errorPrompt=null;
			try
			{
				cmd.ExecuteNonQuery();
			}
			catch(SqlException err)
			{
	
				switch(err.Number)
				{
					case 2627:
						errorPrompt = "登录名已被其它用户使用,请更换!";
						break;
				}
				
			}
			DataCommand.DestroyCmd(cmd);
			return errorPrompt;	
		}
		
		public static Chatter Build(string loginName)
		{
			Chatter c=null;
			return c;
		}
		
		public static Chatter Login(string loginName , string password)
		{
			return null;
		}


		private static  byte[] HashedPassword(string password)
		{
			System.Text.UnicodeEncoding ue = new System.Text.UnicodeEncoding();
			byte[] arPwd = ue.GetBytes(password);
			System.Security.Cryptography.SHA1Managed sha = new System.Security.Cryptography.SHA1Managed();
			byte[] arHashedPwd = sha.ComputeHash(arPwd);
			return arHashedPwd ;
		}
		
		private static byte[] GetSavedPassword(string loginName)
		{
			byte[] arSavedPassword= new byte[20];
			
			SqlParameter pmLoginName = new SqlParameter("@LoginName",SqlDbType.VarChar,20);
			pmLoginName.Direction = ParameterDirection.Input;
            pmLoginName.Value = loginName;

			SqlParameter pmPwd = new SqlParameter("@Pword",SqlDbType.Binary , 20);
			pmPwd.Direction = ParameterDirection.Output;

			SqlCommand cmd = DataCommand.BuildStoredProcCmd("spwebgetemppassword" , new SqlParameter[]{pmLoginName,pmPwd}); 		
			if(cmd.ExecuteNonQuery()!=0)
			{
				arSavedPassword = (byte[])cmd.Parameters["@Pword"].Value;
			}

			return arSavedPassword;
		}

			


	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -