Beispiel #1
0
        public override void Reset()
        {
            curStage = TypeImportStage.Places;

            addressModel = new AddressModel2Entities();
            russia       = (from c in addressModel.Country where c.Name == "–осси¤" select c).First();
        }
Beispiel #2
0
        public override bool ProcessRow(DataRow row)
        {
            //Places NAME	SOCR	CODE	INDEX	GNINMB	UNO	OCATD	STATUS
            string code = row["CODE"].ToString();

            if (!ParsePlaceState(code))
            {
                return(false); //ignore non-actual records
            }
            curStage = ParseCurState(row);
            switch (curStage)
            {
            case TypeImportStage.Places:
                switch (ParsePlaceLevel(code))
                {
                case TypePlaceLevel.Area:
                    importArea(row);
                    break;

                case TypePlaceLevel.District:
                    importDistrict(row);
                    break;

                case TypePlaceLevel.City:
                    importCity(row);
                    break;
                }

                //Commit
                addressModel.SaveChanges();

                break;

            case TypeImportStage.Streets:
                if (importStreet(row))
                {
                    addressModel.SaveChanges();
                }
                else
                {
                    return(false);
                }
                break;

            case TypeImportStage.Houses:
                Building b = new Building();

                addressModel.AddToBuilding(b);
                break;
            }
            return(true);
        }