
WebDataObjects Features Features & Benefits
Use the same code in Windows Forms and Web Forms
WebDataObjects allows you to work with data in Web Forms in the same manner
and with the same code as in Windows Forms. You can create a data library
encapsulating your data and business logic and use it both in Windows and
Web Forms.
Server side caching: Make your ADO.NET datasets reside on the server
Why is it so difficult to work with data in ASP.NET using only ADO.NET,
without C1WebDataObjects caching support? The answer is simple. Because
an ADO.NET data sets cannot reside on the server for the duration of a
user session.
Every time the user sends a request to the server (usually referred to a
post-back in ASP.NET), the data set has to be re-created, if it is not cached.
There is no support for caching in ADO.NET except for storing whole data sets
on the server, which is usually unacceptable for scalability reasons. Since
post-backs are very common in ASP.NET, and unavoidable if you want to exploit
rich ASP.NET capabilities, this is usually the main obstacle to using the
rich data set model on the web.
Using C1WebDataObjects, you take advantage of its automatic server-side
caching. You don't need to write sophisticated code or sacrifice performance.
Simply set performance tuning properties for your data schema, specifying
which of the supported caching modes to use with which data sets and table
views (or, in Express Edition, with which connections and tables), and
C1WebDataObjects does the rest automatically.
Server side caching provides scalability
Global cache is a common means for storage on the server for your web application
serving all requests from all users while preserving the changes made by an
individual user. When a data set is filled with data from a database, the fetched
data is stored in the cache for later use, together with information about a user
request, such as the filter condition used to fetch the data. When an additional
request for the same data set with the same filter condition arrives from the same
or another user, cached data is used to fill the data set instead of fetching data
from the database.
Web Forms data is now as rich as is was in Windows Forms
Using C1WebDataObjects, now you can build your data and business logic for your Web
Forms application using the same rich model as you did for your Windows Forms applications,
including the same data set objects and the same data libraries. Essentially, it allows
you to work with data in Web Forms in the same manner and with the same code as in
Windows Forms. You can create a data library encapsulating your data and business
logic and use it both in Windows Forms and in Web Forms.
Dramatic performance gains with session cache
Session cache stores every user's data set separately on the server. The greatest
advantage of session cache is when it is used in Memory storage mode. In this case
the whole data set object is stored in memory in a ready filled state, so it is
immediately reused on post-backs, does not need to be filled with data at all.
Performance gain can be dramatic, since there are virtually no delays for data
retrieval.
Central repository to avoid data modification conflicts
Application-wide (global) cache, where data belonging to different users are stored in
a centralized repository while preserving each user's personal data modifications
without conflicts.
Immediate access to large datasets
Memory-resident pre-fetched table views allowing immediate access to large amounts of
read-only data. A memory-resident table view is fetched from the database only once,
when it is first requested, and then is reused on every user request, for any user,
at no cost to performance. This is, of course, a powerful feature for optimizing
performance.
Automatic object pooling support
Another optimization feature included in C1WebDataObjects is object pooling. Object
pooling is automatic; you don't need to write a single line of code or set properties
to benefit from it. Object pooling eliminates the need for C1WebDataObjects to create
a new internal object each time to service a new request.
ComponentOne DataObjects is now part of the ComponentOne Studio Enterprise
Order ComponentOne Studio Enterprise