Register       Login  
   Small text Medium text Large text
  Useful links  
   
         
     
  Announcements  
 
Genome v4.2 SP10 released - Wednesday, May 18, 2016
Genome v4.2.11 provides fixes for the integration to Microsoft Visual Studio 2015. With the update DataDomain schema projects can be compiled to .NET 4.6.1 and .NET 4.6.2 as well. The service pack contains a few minor fixes in the Sqlite provider and in the runtime too.  
Genome v4.2 SP9 released - Tuesday, September 22, 2015
Genome v4.2.10 provides integration to Microsoft Visual Studio 2015 with the same functionality as for VS2013. Also with this update the DataDomain schema projects can be compiled to .NET 4.5.2 and .NET 4.6 too. The service pack adds support for PostgreSql database and contains a few minor fixes in the runtime too.  
Genome 4.2 SP8 supports VS2013 and .NET 4.5 - Thursday, October 24, 2013
Genome v4.2.9 provides integration to Microsoft Visual Studio 2013 with the same functionality as for VS2010 and VS2012. Also with this update the DataDomain schema projects can be compiled to .NET 4.5 and .NET 4.5.1 too. The service pack contains a few minor fixes in the runtime too.  
Genome 4.2 SP7 released - Wednesday, May 01, 2013
With a few fixes and a small feature!  
Genome 4.2 SP6 supports VS2012 RTM - Friday, August 24, 2012
Genome v4.2.7 provides integration to Microsoft Visual Studio 2012 RTM with the same functionality as for VS2010. This release contains only this tool enhancement and no change in the runtime.  
Genome 4.2 SP5 with VS2012 RC support - Friday, June 29, 2012
Genome v4.2.6 provides integration to Microsoft Visual Studio 2012 RC with the same functionality as for VS2010. This release contains only this tool enhancement and no change in the runtime.

Important note: Visual Studio 2012 RC comes with a change in the MsBuild system, that causes the Genome builds fail (in VS2012 and also in VS2010) with the following error:
error MSB4185: The function "CurrentUICulture" on type "System.Globalization.CultureInfo" has not been enabled for execution.

This problem will be fixed my Microsoft in VS2012 RTM. In the meanwhile you have to set the environment variable “MSBUILDENABLEALLPROPERTYFUNCTIONS” to “1”. (You might need to restart Visual Studio).
 

Genome 4.2 SP2 (v4.2.3) released - Oct 29, 2010
With many fixes and small features!   read more...
Genome 4.2 released - Feb 10, 2010
Supports now Visual Studio 2010!   read more...
Updated roadmap - Dec 22, 2009
learn more about the upcoming Genome v4.2 release   read more...
Genome 4.1 released - Mar 31, 2009
Read more about what's new in this release.   read more...
New Product Video released - Jan 16, 2009
Get a quick overview of Genome v4.   read more...
 
         
     
  2005/05/25: Genome 2.6 for all editions/platforms  
 


Released on 24th of May 2006 (build: #29)
Genome 2.6.1 for .NET2 was released on 8th of June 2006 (build: #9)

As we are in the process of building the infrastructure for advanced features announced for the upcoming Genome 3.0 release, we can already make some improvements available now.

Improved performance

Improved data population
We have optimised Genome for many data populating scenarios. These optimisations are transparent, so you can benefit from them without modifying the code.

Improved by-Id query generation
We have introduced an internal caching mechanism for generated SQL queries that retrieve objects by their identity values. The cached queries are stored in an LRU cache to provide you fast access to the most commonly used objects while keeping memory consumption under a certain limit. For most applications, the default cache size (twice the number of persistent classes) will be suitable, but you can fine-tune this value (or even disable the cache) by setting the DataDomainConfiguration.ByIdQueryCacheSize property for DataDomain creation.

Predictive caching for set properties
We have refined Genome's predictive caching feature to allow you to bypass lazy loading for set properties in order to optimise nested query execution. In previous releases, this optimisation feature could only be used for singular references (near object references). See PredictiveCacheManager.PrecacheSet in Genome's documentation for details about this feature.
               
Query caching
To support predictive caching for set properties, we have introduced the first version of query caching in Genome. With the QueryCacheManager.CacheSet method, you can load up and store the content of a set instance in the Context and use the query for data operations without executing additional queries to the database. You can control the cache's behaviour using the same cache configuration rules as you do for object-level caching. Specifying typeof(Set) in the cache rules alters the configuration specifically for the query cache. Read more about this feature under QueryCacheManager.CacheSet.
               
New features

Context.AfterOpenConnection event
We have introduced a new event that can be used to execute direct SQL commands (like SET LOCK_TIMEOUT) when a new connection/transaction is initiated by Genome. See Context.AfterOpenConnection for details.
               
Transforming merge-incompatible queries automatically
In previous versions, intersecting or subtracting queries that have different query structures was not possible without reformulating the query. Genome can now perform this transformation automatically in most cases.
               
Mapping the SQL "IN" operator
You can now generate queries with the SQL “IN” operator. The newly introduced Sql.IsIn() method can handle Genome sets (of scalar element type) and any other arbitrary client-side IEnumerable collections. A sub-query expression in the former case, and a list of values in the latter case will be generated for the SQL IN operator. Read more about this feature under Sql.IsIn (object, Set) and Sql.IsIn (object, IEnumerable).
               
Set.Contains method
To decrease the complexity of OQL queries, we have introduced a new operation on the Set class. With the Set.Contains Set.Contains method, you can easily and efficiently check whether an item is in the set both on the client and on the server side. The framework will choose the best implementation depending on your set's element type. If the element type is a scalar or persistent class that only has one primary key, a SQL “IN” operator is generated with a sub-query expression. If the element type has more than one primary key, then the “EXISTS” SQL operator is used instead.

Genome extensions
This version introduces extensions for using Genome with Winforms applications, including an adapter for the Set to be used with the Winforms datagridview control.

New samples
The NorthwindDatabinding samples demonstrate how to use Genome with the new Winforms extensions.