Tech Off Thread

7 posts

Is the DataSet class and related objects, dead?

Back to Forum: Tech Off
  • RodAtWork

    I know that is a bit of a drastic question, so let me clarify.

    I've been reading about LINQ (who hasn't), and I know that it is coming with VS 2008.  But right now I'm facing a major re-write of one of our oldest VB6 applications (it is about 8 years old) and I cannot wait until VS 2008 comes out.  And, for better or for worse, we don't develop with beta versions of Visual Studio.  So my tendency right now is to use the DataSet object, especially with my middle-tier components for passing data back to the Windows client.  I want to know if Microsoft will support the DataSet object for years (at least 5) to come?

  • W3bbo

    RodAtWork wrote:
    I know that is a bit of a drastic question, so let me clarify.

    I've been reading about LINQ (who hasn't), and I know that it is coming with VS 2008.  But right now I'm facing a major re-write of one of our oldest VB6 applications (it is about 8 years old) and I cannot wait until VS 2008 comes out.  And, for better or for worse, we don't develop with beta versions of Visual Studio.  So my tendency right now is to use the DataSet object, especially with my middle-tier components for passing data back to the Windows client.  I want to know if Microsoft will support the DataSet object for years (at least 5) to come?


    It's part of the .NET Framework, and since framework revisions are always cummulative, it's safe to say it will always be supported, but it may become obsolete.

  • JChung2006

    W3bbo wrote:
    It's part of the .NET Framework, and since framework revisions are always cumulative, it's safe to say it will always be supported, but it may become obsolete.

    It isn't safe to say that, especially to a VB6 programmer who knows all about what it's like not to be supported any more.

  • AndyC

    VS 2005 and by extension .NET 2.0 is guaranteed to be supported until at least 2015. See Microsoft Support Lifecycle Policy for details.

  • Minh

    W3bbo wrote:
    
    It's part of the .NET Framework, and since framework revisions are always cummulative
    No, they're not. CLR 2.0 does not have CLR 1.0. They are separate installations. Code written for 1.0 isn't even guaranteed to run on 2.0.

    Who knows if MS would drop the class in its next major update the the CLR.

    Just don't plan too far ahead. Code can always be changed. If it's advantageous for you to use DataSets today, then you should use it. There is such a thing as paralysis through analysis.

  • odujosh

    Just to further clarify. DataSet/DataTable still have their uses. Undoability for example is built into the objects. Something you have to code yourself with anonomus types.

    Also there is LINQ to DataSets:

    http://blogs.msdn.com/adonet/archive/2007/01/26/querying-datasets-introduction-to-linq-to-dataset.aspx

    So to say LINQ kills disconnected ADO.NET classes is in many ways not seeing the full benifit of the classes. Nothing limits you from moving past just using them with SQL/XML. You can write a DataAdapter and provider to connect them to anything. Whether it be an Object factory or binary web service.

    Just think of all the legacy apps that use ADO.NET for the Data Access Layer. They will not change to LINQ to SQL/Entities overnight. The bridging is there mostly to help this case. Not make a case for picking ADO.NET over everything else.

    Disclaimer: Just because I say they are not dead. Does not mean I think they are the end all solution for everything. Always look for the way that most closely models to the problem and go with that.

  • Doctor Who

    Minh wrote:
    
    W3bbo wrote:
    
    It's part of the .NET Framework, and since framework revisions are always cummulative
    No, they're not. CLR 2.0 does not have CLR 1.0. They are separate installations. Code written for 1.0 isn't even guaranteed to run on 2.0.

    Who knows if MS would drop the class in its next major update the the CLR.

    Just don't plan too far ahead. Code can always be changed. If it's advantageous for you to use DataSets today, then you should use it. There is such a thing as paralysis through analysis.


    That is a very good point, Minh about, "There is such a thing as paralysis through analysis."

Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.