Where is DataSet? RRS feed

  • Question

  • I'm building a Windows 8 RT (not 8.1) Store App and using a Windows 7 app as a model. The old model uses System.Data.DataSet. I'm hoping someone can point me to DataSet in a new namespace for Windows RT. If not, is there an alternative that makes porting old code easy?



    Friday, October 18, 2013 7:20 PM


All replies

  • Hi Randy,

    There is no analogous class and limited direct database support in box (i.e. ESE API and HTML IndexedDB). System.Data is not available in the .NET for Windows Store apps - supported APIs .

    See .NET for Windows Store apps overview for information about using .Net Framework in Windows Store apps.

    Windows Store apps typically use SQLite for local data or web services to talk to cloud databases.


    Friday, October 18, 2013 7:28 PM
  • Rob,

    Coming from the iOS world and .NET, I appreciate the direction of Windows RT: it's meant to be a lightweight version of an OS that works on mobile devices.  What I don't understand is the design decision here.  Every robust application needs a data model.  The DataSet is the perfect in-memory data model for relational data.  Of course the web services take care of the real heavy lifting when it comes to data maintenance, but the client needs a means of managing relational data as well.

    Please say it isn't so!  What are we supposed to use on the client to manage the relations between data objects?

    Sunday, April 13, 2014 12:35 AM
  • From what I've heard, DataSet was not included in Windows Store Apps because it's considered to heavy. The Microsoft Object Relational Mapper (ORM) is Microsoft Entity Framework.

    When I started, I was under the impression that porting from Windows 7 to a Windows Store Application would be easy. I ended up rewriting the vast majority of my Windows 7 code. Your milage may vary, depending on what you're doing.

    I can live with the idea that we're changing paradigms. What's hard for me is the documentation from Microsoft, which at times is horrible. This creates a void that people who write articles and create podcasts try to fill. While I think the vast majority of those folks have good intensions, they are sometimes dead wrong. You can end up committing a lot of time to half-baked ideas that won't pass the Windows App Store Certification tests.

    I hate to say the following because I invested a lot of time learning to program in Windows 8 Store Apps - still, I don't think Windows 8 has a bright future. Users cannot figure out how to do basic things, and literally end up taking their device back to the store. Programmers look up API documentation to find no code sample, and a description that just parrots the name. If Microsoft doesn't fix these problems in the eyes of their customers, they will eventually go the way of Pontiac and Oldsmobile, and that would be bad for everybody in my opinion.


    Monday, April 14, 2014 6:54 PM
  • I don't understand what's going on with this decision.  So I took SQLite out for a spin and discovered that there are no managed libraries!  It's a C++ library and it only runs by virtue of the C++ runtime libraries.  Are we supposed to become C++ programmers in order to develop for Windows Store applications?

    I've seen some of the managed wrappers but I've been there and done that with Windows Forms.  It's a crappy foundation on which to build an architecture.  Are we supposed to be programming in managed code now or what?

    As down as I am on the whole WinRT thing right now (I'm also re-writing a good chunk of my code), I guess I don't agree with you about the future.  I've programmed in Objective C for several years and it's an ugly world.  I'd rather have the stripped down version of WinRT than IOS.  If you're looking to develop games or watch video, then the iPad is the place to be but I believe when people have real work to do, it'll be the Surface.  FWIW.


    Monday, April 14, 2014 7:22 PM
  • The dataset has not been included in Silverlight, windows phone, or windows store.   the is a SQLite-net nuget package you can add to your app to connect to SQLite.  Tim Heuer has a blog post on it.


    Monday, April 14, 2014 10:41 PM