Solved

Saving data from observablecollection to database

Posted on 2011-09-19
10
2,379 Views
1 Endorsement
Last Modified: 2013-11-12
I have a WPF datagrid in my UI that is bound to the observablecollection in my viewModel, which I had converted from DataSet (coming from the Model).
I need to know how can I implement the  Delete, Update, and Add operations and save the changes in the database. I have a separate button-events for all these operations.
I am using MVVM pattern.
Please provide code in C#.
1
Comment
Question by:Masterabhi
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
10 Comments
 
LVL 30

Expert Comment

by:anarki_jimbel
ID: 36564234
0
 

Author Comment

by:Masterabhi
ID: 36568498
I am still not able to understand how I am going to save changes back to database from my observable collection.
0
 

Author Comment

by:Masterabhi
ID: 36574474
I am also trying to make changes using, udatesourcetrigger=explicit in order to make changes when I hit save button. How should I bind save button to those changes?What should I write in Save command button? and
Please help. Thanks.
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 96

Expert Comment

by:Bob Learned
ID: 36577909
Are you using anything like Entity Framework, NHibernate, or LINQ-to-SQL?  If not, that might be a better choice, rather than translating from classes to a ADO.NET classic structures.
0
 

Author Comment

by:Masterabhi
ID: 36580714
No I am not using Entity Framework, Nhibernate or Linq to sql.
I am not able to get the Modified observable collection to save into the database.
0
 
LVL 96

Expert Comment

by:Bob Learned
ID: 36580775
I believe that WPF works a lot better with a ORM system, rather than classic ADO.NET classes, since they don't have to go through any conversion to/from the database, and would keep track of changes.  Otherwise, you would need to keep track of object state, and then make sure that the DataSet state is correct when updating back to database.  I can see so many reasons why that would be a problem.
0
 
LVL 4

Accepted Solution

by:
theHollow earned 500 total points
ID: 36593702
To clear something up:
You are not able to post anything back to the database automatically from an ObservableCollection.
That is not the way an ObservableCollection works.
An ObservableCollection is simply a list/enumerable-like type which also implements change notification events (for Binding/UI purposes).

In order to post anything back to the source, you will need to do in reverse what you did to get the data into the collection in the first place.

If you like automation, you may follow the good recommendations from TheLearnedOne and look into ORM models, like Entity Framework, Nhibernate or Linq. That will do the trick.
0
 

Author Closing Comment

by:Masterabhi
ID: 36958996
Thanks
0

Featured Post

Secure Your WordPress Site: 5 Essential Approaches

WordPress is the web's most popular CMS, but its dominance also makes it a target for attackers. Our eBook will show you how to:

Prevent costly exploits of core and plugin vulnerabilities
Repel automated attacks
Lock down your dashboard, secure your code, and protect your users

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
This article aims to explain the working of CircularLogArchiver. This tool was designed to solve the buildup of log file in cases where systems do not support circular logging or where circular logging is not enabled
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:
HTML5 has deprecated a few of the older ways of showing media as well as offering up a new way to create games and animations. Audio, video, and canvas are just a few of the adjustments made between XHTML and HTML5. As we learned in our last micr…

728 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question