public static int Insert(Database db, Track oTrack)
        {
            StringBuilder sbField = new StringBuilder();
            StringBuilder sbValue = new StringBuilder();
            sbField.Append("INSERT INTO  [Track](");
            sbValue.Append("values (");
            //sbField.Append("[Id]");
            //sbValue.AppendFormat("'{0}'", oTrack.Id);
            sbField.Append("[REct])");
            sbValue.AppendFormat("'{0}')", oTrack.REct);
            string cmdText = sbField.ToString() + " " + sbValue.ToString();

            try
            {
                cmdText = cmdText.Replace("\r\n", "");
                db.ExecuteNonQuery(CommandType.Text, cmdText);
                int id = int.Parse(db.ExecuteScalar(CommandType.Text, "SELECT     ident_current('Track')").ToString());
                return id;
            }
            catch (Exception ex)
            {

                throw ex;
            }
        }
        public int Insert(ref string errMessage, Track oTrack)
        {
            Database db = DatabaseFactory.CreateDatabase();
            errMessage = "";
            try
            {
                return TrackDataAccess.Insert(db, oTrack);

            }
            catch (Exception ex)
            {
                errMessage = ex.Message + ex.StackTrace;
                logger.Error("Error Message:" + ex.Message + " Trace:" + ex.StackTrace);
                return -1;
            }
        }
        public void AnalysisFile()
        {
            try
            {
                int pictureId;
                int rectId;
                int vehicleId;
                int trackId;
                int faceId;
                xmlDoc.Load(@"c:\1.0.xml");
                XmlNodeList xml_vehicles,xml_camera,xml_vehicles_tract_rects,xml_faces;

                xml_camera = xmlDoc.SelectSingleNode("/pr/cameras").ChildNodes;
                foreach (XmlNode camitem in xml_camera)
                {

                    XmlElement xcam=(XmlElement)camitem;
                    CapturePicture ocap=new CapturePicture();
                    ocap.CameraID = Convert.ToInt32(xcam.GetAttribute("id"));
                    XmlNode xml_time = xmlDoc.SelectSingleNode("/pr/cameras/camera/timeid");
                    ocap.Datetime = new DateTime(long.Parse(xml_time.InnerText));
                    string errMessage = "";
                    ocap.FilePath = SystemParametersBusiness.Instance.ListSystemParameter["CapPicPath"] + @"\" + ocap.CameraID +
                        @"\" + ocap.Datetime.ToString(@"yyyy\\MM\\dd\\HH\\") + ocap.CameraID +ocap.Datetime.ToString(@"_yyyy_MM_dd_HH_mm_ss_fff")+".jpg";
                    pictureId = CapturePictureBusiness.Instance.Insert(ref errMessage, ocap);

                    xml_vehicles=xmlDoc.SelectSingleNode("/pr/cameras/camera/objects/vehicles").ChildNodes;
                    foreach (XmlNode veh_item in xml_vehicles)
                    {
                        XmlNode xml_vehicles_rect = xmlDoc.SelectSingleNode("/pr/cameras/camera/objects/vehicles/vehicle/rect");
                        XmlElement xml_vehicles_rect1 = (XmlElement)xml_vehicles_rect;
                        REct rect1 = new REct();
                        rect1.X = Convert.ToInt32(xml_vehicles_rect1.GetAttribute("x"));
                        rect1.Y = Convert.ToInt32(xml_vehicles_rect1.GetAttribute("y"));
                        rect1.W = Convert.ToInt32(xml_vehicles_rect1.GetAttribute("w"));
                        rect1.H = Convert.ToInt32(xml_vehicles_rect1.GetAttribute("h"));
                        rectId = REctBusiness.Instance.Insert(ref errMessage, rect1);

                        Vehicle oveh=new Vehicle();
                        XmlElement xveh=(XmlElement)veh_item;
                        oveh.VehicleID=Convert.ToInt32(xveh.GetAttribute("id"));
                        oveh.platenumber=Convert.ToString(xveh.GetAttribute("platenumber"));
                        oveh.speed=Convert.ToSingle(xveh.GetAttribute("speed"));
                        if (Convert.ToInt32(xveh.GetAttribute("stemagainst"))==1)
                        {
                            oveh.stemagainst = true;
                        }
                        else
                        {
                            oveh.stemagainst = false;
                        }
                        if (Convert.ToInt32(xveh.GetAttribute("accident")) == 1)
                        {
                            oveh.accident = true;
                        }
                        else
                        {
                            oveh.accident = false;
                        }
                        if (Convert.ToInt32(xveh.GetAttribute("stop")) == 1)
                        {
                            oveh.stop = true;
                        }
                        else
                        {
                            oveh.stop = false;
                        }
                        if (Convert.ToInt32(xveh.GetAttribute("linechange")) == 1)
                        {
                            oveh.linechange = true;
                        }
                        else
                        {
                            oveh.linechange = false;
                        }
                        oveh.platecolor=Convert.ToString(xveh.GetAttribute("platecolor"));
                        oveh.vehiclecolor=Convert.ToString(xveh.GetAttribute("vehiclecolor"));
                        oveh.PictureID = pictureId;
                        oveh.REctId = rectId;
                        vehicleId = VehicleBusiness.Instance.Insert(ref errMessage, oveh);

                        xml_vehicles_tract_rects = xmlDoc.SelectSingleNode("/pr/cameras/camera/objects/vehicles/vehicle/track").ChildNodes;
                        foreach (XmlNode xml_vehicles_tract_rects_item in xml_vehicles_tract_rects)
                        {
                            REct rect2 = new REct();
                            XmlElement xml_vehicles_tract_rects_item1 = (XmlElement)xml_vehicles_tract_rects_item;
                            rect2.X = Convert.ToInt32(xml_vehicles_tract_rects_item1.GetAttribute("x"));
                            rect2.Y = Convert.ToInt32(xml_vehicles_tract_rects_item1.GetAttribute("y"));
                            rect2.W = Convert.ToInt32(xml_vehicles_tract_rects_item1.GetAttribute("w"));
                            rect2.H = Convert.ToInt32(xml_vehicles_tract_rects_item1.GetAttribute("h"));
                            rectId = REctBusiness.Instance.Insert(ref errMessage, rect2);
                        }
                        Track track = new Track();
                        track.REct = rectId;
                        trackId = TrackBusiness.Instance.Insert(ref errMessage, track);

                    }
                    xml_faces = xmlDoc.SelectSingleNode("/pr/cameras/camera/objects/faces").ChildNodes;
                    foreach (XmlNode xml_faces_item in xml_faces)
                    {
                        //XmlElement xml_faces_item1 = (XmlElement)xml_faces_item;
                        XmlNode xml_faces_item_rect = xmlDoc.SelectSingleNode("/pr/cameras/camera/objects/faces/face/rect");
                        XmlElement xml_faces_item_rect1 = (XmlElement)xml_faces_item_rect;
                        REct rect3 = new REct();
                        rect3.X = Convert.ToInt32(xml_faces_item_rect1.GetAttribute("x"));
                        rect3.Y = Convert.ToInt32(xml_faces_item_rect1.GetAttribute("y"));
                        rect3.W = Convert.ToInt32(xml_faces_item_rect1.GetAttribute("w"));
                        rect3.H = Convert.ToInt32(xml_faces_item_rect1.GetAttribute("h"));
                        rectId = REctBusiness.Instance.Insert(ref errMessage, rect3);
                        XmlNode xml_faces_item_score = xmlDoc.SelectSingleNode("/pr/cameras/camera/objects/faces/face/score");
                        Face face = new Face();
                        face.RectID = rectId;
                        face.PictureID = pictureId;
                        face.score = Convert.ToSingle(xml_faces_item_score.InnerText);
                        faceId = FaceBusiness.Instance.Insert(ref errMessage, face);

                    }

            }

            }
            catch (Exception ex)
            {

                XtraMessageBox.Show(ex.ToString());
            }
        }