Esempio n. 1
0
        void DoImport(string text)
        {
            var lines = text.Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries).Where(s => !s.StartsWith("#")).ToArray();

            if (lines.IsEmpty())
            {
                this.Information("没有可以导入的乘客信息...");
                return;
            }

            if (_passengerAnalyzeReg.IsMatch(lines[0]))
            {
                DoImport(lines.Select(s =>
                {
                    var m = _passengerAnalyzeReg.Match(s);
                    if (!m.Success)
                    {
                        return(null);
                    }

                    var m1  = new Entity.Web.Passenger();
                    m1.Name = m.Groups[2].Value;
                    m1.Type = ParamData.GetPassengerTypeByName(m.Groups[1].Value);
                    m1.SetId(ParamData.GetPassengerIdTypeCodeByName(m.Groups[3].Value), m.Groups[5].Value);
                    m1.MobileNo = m.Groups[6].Value;

                    return(m1.IdTypeCode == '\0' || m1.Type == 0 ? null : m1);
                }).ExceptNull().ToArray());

                return;
            }

            this.Information("很抱歉,暂时无法支持您尝试导入的数据。\n如果您尝试导入的数据是其他软件生成的,请向作者反应,并附上导出的数据。");
        }