You will be able to merge two or more models into one, however, this will require some manual steps to be performed. I have attached a demo project which you can use for reference. Here are the details how I created it:
1. Create a project and add the two domain models. While adding the models, on the last page of the wizard disable the Generate context
option, the context has to be created manually.
Note that a model should not contain any tables included in another model.
2. Create a class deriving from OpenAccessContext (in the example this is MergedContext). The class content is very similar to the one you would get automatically generated. However, here you need to implement a method like the GetMetadataSource which merges the metadata from the two models into one. Once you have the method, initialize the static metadataSource variable with it.
3. (Optional) For each class from the two models create an IQueryable<T> endpoint which can be used in linq queries. This step is optional because you can use the GetAll<T> method directly as well.
This is everything to get the models merged, now you can work with any class from a single context instance. To set the relationships you can directly use the foreign key properties like Product.ProductSubcategoryID and change the value in order to manage the category this product belongs to.
If you want to create navigation members like Product.Category of type ProductCategory, this is also possible but would require a lot more manual operations, including writing these properties manually and extending the OpenAccess metadata. This will have to be done for each association you want to create between classes from different rlinq files. If this is really what you are trying to achieve, just let me know and I will extend the example. I hope that helps.
the Telerik team
Q1’11 SP1 of Telerik OpenAccess is available for download
; also available is the Q2'11 Roadmap
for Telerik OpenAccess ORM.