Mike Fechner
373 posts
Registered:
14 Sep 2016
04 Jan 2019
in reply to
Patrik Wikström
Link to this post
This feature was released on March 19th 2018.
"DatasetModels now support a third UseInterface operating mode: via the ServiceManager
In this mode, the DatasetModel's will obtain a reference to the Business Entity directly via the ServiceManager and will bypass the ServiceInterface that way. Performance will be slightly better as we're bypassing both the context handling in the ServiceInterface and the request authorization provider.
The default value for every DatasetModel's UseInterface property is determined by the new Consultingwerk.OERA.IDatasetModelUseInterfaceProvider service (default implementation is DatasetModelUseInterfaceProvider). This class will decide to use the Service Manager, when the caller of the DatasetModel is from the same or a higher package as the DatasetModel and return the use previously in place logic based on the NUM-DBS's function else.
This is in line with our current thinking about domain driven designs based on the SmartComponent Library backend. Customers implementing a DDD architecture and decide to allow direct access between business components within a module/silo/package may implement the rules when to use direct access and when to use the ServiceInterface in a custom implementation of the IDatasetModelUseInterfaceProvider service."