Most applications contain a set of static relational data, such as a list of countries, states, credit card types, and others. The application does not need to waste time retrieving this static data from the database; it never changes. In this recipe, we will show you how you can use the well-known instance type from the unofficial NHibernate AddIns project to avoid this unnecessary work.
Create a new class library project named
WKITExample
.Install the
NHibernate
package using the NuGet Package Manager Console by executing the following command:Install-Package NHibernate
Add the following
GenericWellKnownInstanceType
class:[Serializable] public abstract class GenericWellKnownInstanceType<T, TId> IUserType where T : class { private Func<T, TId, bool> findPredicate; private Func<T, TId> idGetter; private IEnumerable<T> repository; protected GenericWellKnownInstanceType( IEnumerable<T> repository, ...