/// <summary>
		/// 校验验证码
		/// </summary>
		/// <param name="type">验证码类型</param>
		/// <param name="points">验证码点位置</param>
		/// <returns></returns>

		public async Task<bool> CheckVerifyCode(VerifyCodeType type, params Point[] points)
		{
			var randType = "sjrand";

			//为了准确起见,我们使用真正的引用页
			var urlRefer = "https://kyfw.12306.cn/otn/login/init";

			if (type == VerifyCodeType.SubmitOrder)
			{
				randType = "randp";
				urlRefer = "https://kyfw.12306.cn/otn/confirmPassenger/initDc";
			}

			var ctx = Session.NetClient.Create<WebResponseResult<VerifyCodeCheckResult>>(
																							HttpMethod.Post,
																						"https://kyfw.12306.cn/otn/passcodeNew/checkRandCodeAnsyn",
																						urlRefer,
																						new
																						{
																							randCode = points.Select(s => s.X + "," + s.Y).JoinAsString(","),
																							rand = randType
																						}
				);

			await ctx.SendTask();

			return ctx.IsValid() && ctx.Result.Data.Result == 1;
		}
		/// <summary>
		/// 加载验证码
		/// </summary>
		/// <param name="type">验证码类型</param>
		/// <returns></returns>
		public async Task<Image> LoadVerifyCodeImage(VerifyCodeType type)
		{
			var module = "login";
			var randType = "sjrand";

			//为了准确起见,我们使用真正的引用页
			var urlRefer = "https://kyfw.12306.cn/otn/login/init";

			if (type == VerifyCodeType.SubmitOrder)
			{
				module = "passenger";
				randType = "randp";
				urlRefer = "https://kyfw.12306.cn/otn/confirmPassenger/initDc";
			}


			var ctx = Session.NetClient.Create<Image>(HttpMethod.Get,
													string.Format("https://kyfw.12306.cn/otn/passcodeNew/getPassCodeNew?module={0}&rand={1}&{2}", module, randType, new Random().NextDouble().ToString()),
													urlRefer
				);
			await ctx.SendTask();

			return ctx.Result;
		}
		public RequireVcDlg(ServiceContext context, VerifyCodeType randType) : base(context)
		{
			RandType = randType;

			InitializeComponent();
		}