Hi Giannis Kyrias,
All the things that your project requires are doable with OpenAccess. For the search criteria you can either construct SQL dynamically or take advantage of the Dynamic LINQ library. As for the dynamic metadata construction you have two possible approaches. You can dynamically edit the xml being used in the Database.Get() method should you be using the old way of reverse mapping (an example can be found here) or you can take advantage of our metadata container if you are using the new Visual Designer. Additional information regarding the metadata container can be found in our chm help being distributed with the product installation under OpenAccess ORM Visual Designer > Feature Reference > OpenAccess Metadata > Overview.
the Telerik team
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Telerik Public Issue Tracking
system and vote to affect the priority of the items