locked
WPF for a database application RRS feed

  • Question

  • We are looking to rewrite a multi-user database application in either C# with Windows form or WPF.  Our application needs to support up to about 100 users without performance issues (hardware, etc. aside).  Does anyone have any info or feedback on the following;

    -How is performance of a database with basic forms/grids using WPF/C#/SQL as opposed to C#/windows forms/SQL?  Are there obvious reasons not to use it if developing a database application that may be transaction intensive (not multimedia intensive)?

    -is WPF intended to cater moreso to multimedia based applications as opposed to client/server database?

    I've done quite a bit of research, but haven't really come up with a lot of useful info regarding WPF.  The general consensus seems to be it's great to program in, flexible (designers and developers), but doesn't perform well.  I haven't been able to find any recent articles on performance though, relating to .net 4.0.  The other big question is where is it headed?  I know the VS 2010 interface was rewritten in WPF, but that doesn't really help us determine if it would be suitable for our project.  We love the fact that we can assign designers and developers to the project, but performance is the key.  If it's slow it won't work well in a business environment.

    Thanks for your feedback!

    Monday, April 4, 2011 11:27 PM

Answers

  • WPF works great for LOB applications - once you understand the way it works.  It's much simpler to keep a good, clean architecture in place via WPF and MVVM instead of Windows Forms and MVP, for example.

     

    Most of the performance issues are really not a problem, IMO.  WPF 3.5sp1 and 4.0 drastically improved performance issues.

     

    The main disadvantage is the lack of third party controls when compared to Windows Forms - however, with WPF, there is usually far less need for these, as it's so much easier to template out the customization you want.

     

    "The other big question is where is it headed?"

     

    This, to me, is the #1 advantage to WPF over Windows Forms.  There is some question about where WPF is headed - but Windows Forms is basically dead.  There's no new development at all happening on Windows Forms - where WPF is being used for large scale products within both MS and the industry at large.  It's also getting actively developed - 3.5sp1 + 4 both had dramatic improvements with WPF, and there have been talks showing substantial improvements in vNext.

     


     


    Reed Copsey, Jr. - http://reedcopsey.com
    If a post answers your question, please click "Mark As Answer" on that post and "Mark as Helpful".
    • Proposed as answer by Min Zhu Wednesday, April 6, 2011 3:03 AM
    • Marked as answer by Min Zhu Friday, April 8, 2011 2:39 AM
    Tuesday, April 5, 2011 12:02 AM
  • Best thing to do... test it! Create a simple WPF app, populate a grid, and see what happens. In my experience, as long as you're using paging (and perhaps virtualization) of a ListView, WPF will perform just fine. Don't expect it to smoothly hold 1000's of heavily customized rows in GridView though.. 100 should be OK, but I'd strongly suggest putting together a test project to be sure. 



    • Proposed as answer by Min Zhu Wednesday, April 6, 2011 3:03 AM
    • Marked as answer by Min Zhu Friday, April 8, 2011 2:39 AM
    Tuesday, April 5, 2011 1:20 AM

All replies

  • WPF works great for LOB applications - once you understand the way it works.  It's much simpler to keep a good, clean architecture in place via WPF and MVVM instead of Windows Forms and MVP, for example.

     

    Most of the performance issues are really not a problem, IMO.  WPF 3.5sp1 and 4.0 drastically improved performance issues.

     

    The main disadvantage is the lack of third party controls when compared to Windows Forms - however, with WPF, there is usually far less need for these, as it's so much easier to template out the customization you want.

     

    "The other big question is where is it headed?"

     

    This, to me, is the #1 advantage to WPF over Windows Forms.  There is some question about where WPF is headed - but Windows Forms is basically dead.  There's no new development at all happening on Windows Forms - where WPF is being used for large scale products within both MS and the industry at large.  It's also getting actively developed - 3.5sp1 + 4 both had dramatic improvements with WPF, and there have been talks showing substantial improvements in vNext.

     


     


    Reed Copsey, Jr. - http://reedcopsey.com
    If a post answers your question, please click "Mark As Answer" on that post and "Mark as Helpful".
    • Proposed as answer by Min Zhu Wednesday, April 6, 2011 3:03 AM
    • Marked as answer by Min Zhu Friday, April 8, 2011 2:39 AM
    Tuesday, April 5, 2011 12:02 AM
  • Best thing to do... test it! Create a simple WPF app, populate a grid, and see what happens. In my experience, as long as you're using paging (and perhaps virtualization) of a ListView, WPF will perform just fine. Don't expect it to smoothly hold 1000's of heavily customized rows in GridView though.. 100 should be OK, but I'd strongly suggest putting together a test project to be sure. 



    • Proposed as answer by Min Zhu Wednesday, April 6, 2011 3:03 AM
    • Marked as answer by Min Zhu Friday, April 8, 2011 2:39 AM
    Tuesday, April 5, 2011 1:20 AM
  • Thanks for the info guys.
    Tuesday, April 5, 2011 2:15 AM