winforms - heavy data application silverlight vs mvc vs asp.net -
we've been using custom made erp application more 4 years, there bad design issues affected performance application right now.
in fact problem is, application can classified heavy-data application, aka business application.
the biggest bad design issues, getting whole data particular business unit, , assign controls, or keep in memory (like arraylists, generic lists), , give user flexibility of navigation , full application speed response.
in first 2 years of usage, didn't notice problem, end of period, getting complaints, more , more performance of application.
we , still using ado.net, stored procedures, generated crud operations (get, list, delete, insert, update sps), if going separate each year's data, we've redesign auto generated sps required modifications in data access layer, , fact there no actual separation in layers, not able easy means modification, first upcoming solution database enhancements balance huge data traffic, problem raises again 6 months now.
so think time correct our mistakes (very late decision), how this? end these solutions:
use web application rather windows application, we'll able use our server's full power, , minimizes traffic connection
redesign application takes care of year endings, don't data, use better orm rather old fusion ado.net, stick in windows forms, , same application
and according time frame (limited how), team members (2, both have experience in windows, web development), i'm not able take decision right now, i'm afraid windows application modifications take longer time expected.
can advice me?
i'm using c# 4.0, asp.net web forms, (mvc newbie).
if database quick, you've indicated in response comment, then, have suggested, must reduce amount of data populating dataset.
although ado.net uses "disconnected" model, developer still has control on select-query used populate each table/relation in dataset. hypothetical example: suppose had 5000 customers in customers table in database. might populate customers table in dataset this:
select * customers order customername
or this:
select id, customername customers order customername
the order-headers table populated this:
create proc getorderheaders4customer @customerid int select * orderheader customerid = @customerid
that is, need have current customer in gui before you'd populate orderheaders relation, , fetch order-detail data when user clicks on particular order-header in gui. point is, ado.net can used -- don't have abandon in app in order more parsimonious disconnected dataset.
how data fetched client, , more importantly, when data fetched client, under developer control regardless of whether it's silverlight, winforms, or asp.net. now, if erp application not efficient, retrofitting efficiency may difficult. don't have abandon ado.net achieve efficiency, , choosing data-layer technology not bring efficiency.
Comments
Post a Comment