Designing an Aspect-Oriented Persistence Layer Supporting Object-Oriented Query Using the .NET Framework 3.5 - Jooyandeh, Mohammadreza; Hashemi, S. Mehdi (COMPUTING AND INFORMATICS, 2012)
In this article, we discuss aspect persistence, how it can be implemented in the .NET framework, and how to use the .NET framework to provide object-oriented queries for aspect-oriented persistence layers. The manner in which aspect-orientation can be available in the .NET framework is investigated in the first part of this article. Then the procedure through which adding persistence concepts to the .NET framework as aspects will be explained. In the next step, providing object-oriented querying is discussed, which is the main part of this article. Having object-oriented querying ability helps processes query in the same object-oriented domain in which objects are defined (not in the relation entities’ domain). Language Integrated Query (LINQ) is used to provide the ability of querying in an object-oriented manner. Then, the translation of queries from the real objects’ domain to the storage-objects’ domain is explained. After such translation, the queries can be run by using the existing LINQ providers (for example LINQ to SQL). Finally, translating the result of queries back into the real objects’ domain is discussed.