![]() | |
![]() |
| | Thread Tools | Search this Thread | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
#3
| |||
| |||
|
|
Hello Matt, Regarding on the Row Index issue in GridView databinding/updating you mentioned, I think it is a common case if the DataSource you used to bind Gridview is always retrieved from database directly(is this your case)? Actually, for ASP.NET web page, due to the http protocol's stateless nature, when a page first display to client with databound data, and after the user submit page to do editing/updating, there may exists some certain timespan, and there certainly may have occured changed in the backend database, if it is a frequently updating database. Therefore, for your scenario, if your backend database may frequently be changed due to the front application's concurrent access(multi-users environment),I suggest you consider the following approach: ** Implement local cache in your ASP.NET application(for the data access component). Whenever you pull some resultset from database, you cached it in server momey(such as using the ASP.NET application cache) so that before the cache become invalid, the calling side always get the cached resultset. ** For your GridView(or any other front databound controls), instead of directly query backend database, you use the local cached dataset (during the lifecycle of the cached resultset). This can confirm the consistency of the datasource be bound to GridView(between multiple databinding or page requests roundtrip). How do you think? Sincerely, Steven Cheng Microsoft MSDN Online Support Lead ================================================== Get notification to my posts through email? Please refer to http://msdn.microsoft.com/subscripti...ult.aspx#notif ications. Note: The MSDN Managed Newsgroup support offering is for non-urgent issues where an initial response from the community or a Microsoft Support Engineer within 1 business day is acceptable. Please note that each follow up response may take approximately 2 business days as the support professional working with you may need further investigation to reach the most efficient resolution. The offering is not appropriate for situations that require urgent, real-time or phone-based interactions or complex project analysis and dump analysis issues. Issues of this nature are best handled working with a dedicated Microsoft Support Engineer by contacting Microsoft Customer Support Services (CSS) at http://msdn.microsoft.com/subscripti...t/default.aspx. ================================================== This posting is provided "AS IS" with no warranties, and confers no rights. |
#4
| |||
| |||
|
#5
| |||
| |||
|
|
Thanks for your followup Matt, Sure, if the dataset is quite large, you do need to consider the memory pressure it may bring to your server machine. Actually, what I wonder is whether you'll need to frequently load different (can not share) instances of such dataset from backend database. Also, if the application is serving concurrent client users, can such large dataset shared by users or each use will have an individual copy, if each user will own a specific copy, that make the memory pressure further critical. For such scenario, I would suggest you consider some other kind of data editing/updating in your ASP.NET page. For example, instead of using GridView to do both data displaying and edting, you can use GridView to display data only, it can display all the data records in rows, then, for each record, when user click edit button in GridView, you can popup/display another separate FormView or DetailsView for editing the selected record, since this record can be located through its primary key(rather than ItemIndex in GridView), you can avoid the inconsistency issue in earlier case. How do you think? Sincerely, Steven Cheng Microsoft MSDN Online Support Lead This posting is provided "AS IS" with no warranties, and confers no rights. |
#6
| |||
| |||
|
![]() |
| Thread Tools | Search this Thread |
| Display Modes | |
| |