Thank you for provided information.
I have a custom module that is integrated in Sitefinity UI. It uses its own database, not Sitefinity database. So, the module provides only web UI that allows adding\modifying\deleting some information. It has own database, data provider, model and web controls.
My goal is moving of my module from Sitefinity 3.7 to Sitefinity 4.0 without any big changes.
There are several reasons why I do not want use Generic Content:
1. As far as I understand, Generic Content supposes that module will be closely integrated with Sitefinity infrastructure. It must store its tables in Sitefinity database and must use OpenAccess as data provider(correct me if I'm wrong). Currently, my own database and data provider already created and I would like to use them.
2. My module does not use the features of Generic Content, such as localization, workflow, user-freindly Urls, etc.
There are too many methods or properties that I need override. For instance, to use module manager class in back-end services it must implement methods of IContentLifecycleManager interface. That means, about 13 methods must be implemented for each data object. I have 7 base classes which describe my data objects. In total, about 91 methods must be implemented.
As I wrote above, my module does not inherit from Generic Content. It consist of:
- manager class that is derived from ManagerBase class;
- data provider that is derived from DataProviderBase class;
- WCF services which are written from scratch (as described in your Developer's Guide);
In general, all works great.
There is only one problem - how to pass ID of parent element from one definition to another definition?
In Siteifnity 3.7 it was very simple to add an ID of parent element in query string and get this ID on child view side.
As I can see from this post
, in Sitefinity 4.0 a child data object must implement IHasParent interface.
However, it requires usage of GenericContent model.
I like the way how to use definitions to configure back-end apperance of module.
It would be great if will be more simple way to pass parameters between definitions.
Correct me please if I misunderstood something.
Thanks in advance,