protected void OnParameterChanged() { int id = (int)Parameter; using (var ctx = new ChinookModel()) { var result = (from track in ctx.Track .Include(x => x.Album) .Include(x => x.Genre) .Include(x => x.MediaType) where track.TrackId == id select new TrackInfo() { TrackId = track.TrackId, Name = track.Name, AlbumId = track.AlbumId, AlbumTitle = track.AlbumId.HasValue ? track.Album.Title : "", MediaTypeId = track.MediaTypeId, MediaType = track.MediaType.Name, GenreId = track.GenreId, Genre = track.GenreId.HasValue ? track.Genre.Name : "", Composer = track.Composer, Milliseconds = track.Milliseconds, Bytes = track.Bytes }).FirstOrDefault(); Load(result); } }
public Task LoadTracks() { IsLoading = true; return(Task.Factory.StartNew((state) => { using (var ctx = new ChinookModel()) { // Apply the DTO pattern var result = from track in ctx.Track .Include(x => x.Album) .Include(x => x.Genre) .Include(x => x.MediaType) select new TrackInfo() { TrackId = track.TrackId, Name = track.Name, AlbumId = track.AlbumId, AlbumTitle = track.AlbumId.HasValue ? track.Album.Title : "", MediaTypeId = track.MediaTypeId, MediaType = track.MediaType.Name, GenreId = track.GenreId, Genre = track.GenreId.HasValue ? track.Genre.Name : "", Composer = track.Composer, Milliseconds = track.Milliseconds, Bytes = track.Bytes }; Tracks = new ObservableCollection <TrackInfo>(result.ToList()); } ((IDispatcherService)state).BeginInvoke(() => { this.RaisePropertyChanged(x => x.Tracks); // Notify the UI IsLoading = false; }); }, DispatcherService)); }
public void TestChinookModelCreation() { using (var entities = new ChinookEntities()) { var provider = new DbProviderInfo("System.Data.SqlClient", "2008"); var model = ChinookModel.CreateModel(provider); Assert.NotNull(model); } }
void IEditableObject.EndEdit() { //if (!string.Equals(Name, track.Name)) // track.Name = Name; //if (!string.Equals(Composer, track.Composer)) // track.Composer = Composer; //if (TrackId != track.TrackId) // track.TrackId = TrackId; using (var ctx = new ChinookModel()) { var track = (from t in ctx.Track where t.TrackId == this.track.TrackId select t).FirstOrDefault(); if (track != null) { track.TrackId = this.TrackId; track.Name = this.Name; track.AlbumId = this.AlbumId; //track.AlbumTitle = this.AlbumTitle; track.MediaTypeId = this.MediaTypeId; //track.MediaType = this.MediaType; track.GenreId = this.GenreId; //track.Genre = this.Genre; track.Composer = this.Composer; track.Milliseconds = this.Milliseconds; track.Bytes = this.Bytes; ctx.SaveChanges(); hasChanges = false; this.RaiseCanExecuteChanged(x => x.Save()); Messenger.Default.Send(new RequerySuggestedMessage()); } CurrentWindowService.Close(); } }