The Web Store is designed with developers in mind. All of the source code to the application and the framework is available in fully documented C# sharp code. An extensive Help File that includes a full class reference is also provided so you can utilize this functionality efficiently.
- Based on extensible business objects
The Web Store store is designed separating the business and display logic clearly. The ASP.Net code only 'drives' the business objects, making for a clean Web interface. The same business objects are used in the offline viewer application. The business object classes support easy extension for base operations like shipping and tax calculations, credit card processing with either class hooks to make this process easy.
- wwBusiness Business Object Framework
The Web Store is based on a business object framework that separates the business logic of the application from the front end code (ASP.Net pages/Web Service/WinForm front end). The framework is made up of the business object layer (wwBusiness) and a Data Access Layer (wwData + provider specific subclasses). The Data Access layer provides the interface to different kinds of data backends which are configurable and switchable at any time.
- wwBusiness reduces Code Size and minimizes writing of SQL
The wwBusiness layer is a single layer business object that provides common CRUD (Create, Read, Update Delete) methods to provide easy ability to retrieve manipulate and update data without writing SQL or ADO.Net code.
- wwBusiness support for multiple Data Access Backends
In addition to the default Sql Server support we've added support for Visual FoxPro, MySql, generic OleDb and generic Odbc data providers wrapped in their own data access classes. Note that wwBusiness support is provided for many different backends, but the Web Store currently works only with Sql Server/MSDE or Visual FoxPro data sources.
- Object/Record synchronicity
Many operations of the business object deal with record/object level operations which can be easily performed with wwBusiness. A simple utility tool also makes it easy to generate strongly typed data from your DataRows without having to use the overhead of full typed DataSets (although you can still use them if you choose).
- Object relational model
The Web Store is an example of building data relationships through object relations rather than through database relationships. Rather than having Datasets with related data, objects contain related objects that describe the logical relationships between entities.
- Databinding Control Classes
The Web Store also ships with two-way databinding controls for common Web Form controls. Two way databinding provides full roundtrip support for binding and unbinding data without having to write unbinding code. With databdinding provided through a property based interface that specifies what to bind and what to bind to, productivity for form design increases incrementally and leaves databinding logistics in one place (the property editor).
- Support Controls and Forms
The application also includes a number of reusable support controls like a TabStrip interface, a Online Help control, a simple bar chart control using tables, and a generic MessageDisplay function that can be easily plugged into new applications.
- Configuration Manager
The wwAppConfiguration class provides a standard way to map a configuration object to the entries stored in a .Config file. By creating a class with fields or properties, you can automatically persist the settings into Web.Config or App.Config files. You gain a fully typed interface to the configuration settings anywhere in your application. Optionally you can also cause selected configuration settings to be encrypted. This interface also offers write access to configuration data so you can write configuration settings back into the configuration file.
- Request Logging
Keep track of what your application is doing by enabling Request Logging through the WebRequestLog class which can log every request with information that is valuable for tracking user trends and other information about your application.
- Error Logging
The WebErrorHandler class manages exceptions in a Web Application by parsing Exceptions and allowing you to log and /or email a detailed exception report that provides information about the currently running request. The information is rich enough to provide a developer detailed information about code and data failures.
- Utilities, utilties, utilities
There are also tons of helper classes and functions that are reusable. Get high level functionality for string manipulation, Reflection access, Data routines, Encryption and much more...
- Full Source Code
This application comes with fully documented C# source code written by Rick Strahl a C# MVP. Source code is provided for the ASP.Net front end application and templates, the business object class framework, and a set of very useful utility classes that can be reused in other projects. The source code is liberally commented so it should be easy to follow when reading.
- Fully documented in User Guide and Developer Guides in the Help File
The Web Store is fully documented both for operation as well as the developer interface, so you get a full class reference for all the classes that are part of the Web Store as well as all of the supporting framework and utility classes.
Of course these are only a few of the highlights and there's much more. Specifically there are many application specific best practices applied to that show how to break up logic in the application to keep all code in managable chunks. But most importantly you can see everything working together to get a feel of how all this stuff relates in a real life scenario.
Comment or report problem with topic