Now I can use my Repository class again and it's methods to retrieve my records:

var q = uow.Find<User>(u => u.Deleted).Take(10).ToList();

Of course I realise this is my own personal way of doing things when using IQueryable and that many people might not prefer to code like this but I was surprised that Linq-to-Sql has a nice GetTable<TEntity>() method but IQToolkit did not, so I just
wanted to let people know howto add one to the toolkit if they also use a generic repository/datacontext to do the heavy work :-).

As always any comments/hints/tips/suggestions are more then welcome, thank you.

The string in the GetTable call does not correspond to the database table name, it corresponds to the 'id' inside the mapping that has all the mapping info. If you are using mapping attributes, the name is the name of the property with the mapping
attributes declared on it (which is the name of the property the call to GetTable is inside of.)

You can simply leave this argument null and get the behavior you want. If you leave it null, the mapping by attributes system will search the class for a property that returns a collection or query of that type and find its attributes there..

I realize that (now) but I just want to have a clean call in the code so I can omit the parameter.
Extremely happy that the code allows for this level of flexibility :-) The way the mapping works is quite awesome.

We are not using the built-in properties, since they are published through the repository in a generic matter and not directly accessible from our pages, or rather for now we do not allow direct access to them. They are however usable from within the services
in order to write filters and/or extension methods on IQueryable<TEntity>.

Not sure if we want to publish the IQueryable<TEntity> all the way to the page level, but that's something entirely different!

Thanks for correcting me on that misunderstanding and keep up the amazing work Matt!

The string in the GetTable call does not correspond to the database table name, it corresponds to the 'id' inside the mapping that has all the mapping info. If you are using mapping attributes, the name is the name of the property with the mapping attributes
declared on it (which is the name of the property the call to GetTable is inside of.)

You can simply leave this argument null and get the behavior you want. If you leave it null, the mapping by attributes system will search the class for a property that returns a collection or query of that type and find its attributes there..