//Gets the table name for this type //For Get(id) and Delete(id) we don't have an entity, just the type so this method is used //Use dynamic type to be able to handle both our Table-attribute and the DataAnnotation //Uses class name by default and overrides if the class has a Table attribute private static string GetTableName(Type type) { string tableName; if (TableNames.TryGetValue(type, out tableName)) { return(tableName); } tableName = _tableNameResolver.ResolveTableName(type); TableNames.AddOrUpdate(type, tableName, (t, v) => tableName); return(tableName); }