public int Save(Route route) { aspnetdbDataContext aspdb = new aspnetdbDataContext(); RouteLinq rtlq=new RouteLinq(); rtlq.UserId = route.UserId; rtlq.SourceName = route.Name; rtlq.GpxData = XElement.Parse(route.GpxData); //--------------------------- rtlq.CreationTime = route.Time; aspdb.RouteLinqs.InsertOnSubmit(rtlq); aspdb.SubmitChanges(); //Probieren ob das Einfügen Erfolgreich durchgeführt wurde oder nicht int k1; System.Data.Linq.ChangeSet cs1 = aspdb.GetChangeSet(); k1=cs1.Inserts.Count(); //---Die Suche nach ID var res = (from p in aspdb.RouteLinqs orderby p.RouteId descending select p.RouteId).Take(1); route.Id =Convert.ToInt32(res.FirstOrDefault()); //------------------------------------------------------ foreach (var trackpoint in route.TrackPoints) { TrackPointlinq trlq = new TrackPointlinq(); trlq.RouteFK = route.Id; trlq.TrackTime = trackpoint.Time; trlq.Latitude = (float)trackpoint.Latitude; trlq.Longitude = (float)trackpoint.Longitude; trlq.Elevation = trackpoint.Elevation; aspdb.TrackPointlinqs.InsertOnSubmit(trlq); aspdb.SubmitChanges(); } //Probieren ob das Einfügen Erfolgreich durchgeführt wurde oder nicht int k2; System.Data.Linq.ChangeSet cs2 = aspdb.GetChangeSet(); k2 = cs2.Inserts.Count(); //------------------------------------------------------ if ((k1 == 0) && (k2 == 0)) { return 1; } else return 0; }
partial void UpdateRouteLinq(RouteLinq instance);
partial void DeleteRouteLinq(RouteLinq instance);
partial void InsertRouteLinq(RouteLinq instance);