Search
Home Page Contact Ελληνικά
TECHNOLOGIES»NESSOS FRAMEWORK
Nessos Framework

Nessos Framework

The cornerstone of all Nessos applications is not just an ordinary Object-Relational Mapper. It provides:

Nessos Framework

 

  • Visual design of class hierarchies
  • Automated generation of ER model from class hierarchies
  • Automated generation of SQL and C# source code
  • Visualization of ER model
  • Automated reconstruction of class hierarchies of .NET assembly through ReflectionNessos Framework
  • Metadata-based persistence
  • Application development independent of RDMBS in use
  • Application development using object-oriented techniques and functional programming
  • Native support of standard business objects 
    • Parameters model 
    • Security model
  • Test-driven development through Unit Tests
  • Support for Microsoft Visual Studio 2005, 2008

 

 

Nessos Framework

Vizualization of relational model

Nessos Framework

Automated generation of SQL of Database that corresponds to the Business Object Model

 Detailed Technical Description of Nessos Object-Relational Mapper Features

  • Mapping
    • ActiveRecord based (1-1)
    • Table - Class
    • Property – Column
    • Type of relations (1-1, 1-n, n-n)
    • Single Table Inheritance
    • Attribute based mapping – sensible default conventions
    • Special support for mapping localizable columns
  • Query
    • (IQuery) Internal DSL for expressing statically typed queries
    • Aggregate (SUM, AVG, MAX etc)
    • Sub queries
    • Functions (Trim, SubString, Abs etc)
    • Support for joins (inner join, left outer join)
    • Support for order by-group by clauses
    • Support for Localization parameters in Select and Where clauses
    • Polymorphic queries
    • Flexibility in result types
      • Strongly typed collections
      • DataTable – for support in scenarios with flexible projections in reporting scenarios
    • Custom parameterized SQL for not-supporting scenarios
  • Base Type (BusinessObject) for one stop shop experience
    • Object tracking management
    • Transparent object Persistence
    • Common retrieval methods
  • Session Management
    • Light-Weight Session Scope with transaction semantics similar to TransactionScope
    • Support for implicit
      • Lazy loading
      • Transaction Management
      • Caching
  • Loading
    • Lazy Loading
      • Implicit - Automatic loading on member-Collection dereferences, plus caching inside session scopes
      • Explicit loading with the use of Refresh methods
    • Eager Loading (In order to avoid N+1 selects and the problem of multiple Left outer joins we use one select query for each depth level and at the end we reconstruct the object graph)
      • Based On Depth
        • Unidirectional deepening for scenarios that demand no circle references(like Xml Serialization)
      • Based On Dereference Paths from Root
  • Support n-Tier scenarios
    • Self-tracking Business Objects
    • Silverlight support – WCF
    • Winforms support – ASMX
  • Concurrency management
    • Optimistic concurrency with the use of TimeStamp Columns
  • Transaction Support
    • Explicit API for begin-complete-rollback transactions
    • Implicit support (inside Session Scopes) for begin-complete-rollback transactions
  • Localization
    • Flexible String Localization with the use of special container type
    • Attribute decorated enums
  • Validation
    • Attribute based (Presence, RegEx etc)
    • Per Business Object cascading Validation
    • Flexible Rule set Validations
  • Customization-Configuration
    • IoC based configuration
    • Multiple available Loggers for injection
  • Multiple OS/Platforms
    • Mono support
  • Multiple Databases Support
    • SQL Server 200x, Oracle, PostgreSQL

 

Company | Solutions | Technologies | Projects | News | Downloads | Contact