The main purpose of the Smart Client Object Model (SCOM) is to allow the same ease of development when developing a smart client, as when developing a client/server application. In fact, the SCOM can be considered as a remote extension of the Business Object Model (BOM).
However, the SCOM isn't compulsory when developing smart clients with CodeFluent: instead of using the SCOM, developing with standard tools is possible (e.g. using the Microsoft Visual Studio generated proxy). Nevertheless, the SCOM was conceived to streamline your smart client developments since it abstracts all communication related matters, and provides a complete object model to the developer. This way the development complexity of developing a smart client is lowered to the one of developing a classic client/server application.
The Service Object Model Producer is the producer which generates the SCOM. Furthermore, it also generates the server side services that are consumed by the SCOM. This way all communication needs are covered by this producer: services exposing your BOM, transport of data through the Windows Communication Foundation (WCF) technology, and client side endpoints which not only consume the services, but also provide a complete remote version of the BOM to the developer; allowing the developer to have the same development experience as consuming directly the BOM.
Consequently, the SCOM basically contains all of the BOM features with the difference they are accessed remotely, which implies some extra notions. Therefore, most of the articles in this section point to articles in the BOM section and/or to some specific articles explaining some subtleties introduced by the fact the SCOM is used remotely.
In This Section
Using The Smart Client Object Model
Provides information on how to generate the SCOM and then use it.
Provides information on how to host WCF services.
Provides information on how to configure your services and client.
Provides information on available features related to serialization.
Provides information on how to add custom business logic to the object model.
Provides information on available localization features.
Provides information on available validation features.

