Index
A
- ACID property / Transaction
- ADO.NET connection / NHibernate session versus database session
- ADOConnection
- about / Session
- anemic domain model / Time for action – Implementing an order entry model
- Apache project
- about / Logging
- application
- logging, adding to / Time for action – Adding logging to our application, What just happened?
- AsEnumerable method / Changing from querying the database to querying in-memory objects
- AsEnumerable statement / Using LINQ to NHibernate the wrong way
- attribute-based mapping
- about / Attribute-based mapping
- advantages / Attribute-based mapping
- disadvantages / Attribute-based mapping
- auto-mapping
- about / Mapping by convention
- advantages / Mapping by convention
- disadvantages / Mapping by convention
- AutoMapper
- auto mapping
- Fluent NHibernate / Auto-mapping with Fluent NHibernate
- using / Time for action – Using auto-mapping, What just happened?
B
- base entity
- base framework
- creating, for mapping tests / Time for action – Creating the base for testing, What just happened?
- batch
- multiple queries, executing in / Executing multiple queries in a batch
- BeginRequest handler / Using implicit transactions
- benefits, NHibernate Profiler / Monitoring and profiling with NHibernate Profiler
- bound context
- about / The session factory
- BrokenRules method / Time for action – Validating user input
- BuildSessionFactory() method / Creating a session factory
- byte code provider
C
- cache
- about / First level cache or identity map
- clearing / Clearing the cache
- entities, refreshing in / Refreshing entities in the cache
- cache regions
- about / Cache regions
- caching mechanisms
- about / First level cache or identity map
- first level cache / First level cache or identity map
- second level cache / Second level cache
- Castle
- Castle proxy generator
- Categories table
- category
- about / Defining a model
- adding, to database / Time for action – Adding a new category to the database, What just happened?
- category list
- loading, from database / Time for action – Loading the list of all categories from the database, What just happened?
- CausePhantomUpdate method / Time for action – Causing a phantom update
- check constraints / Constraints
- CheckProperty method / Testing the mapping with Fluent NHibernate
- classes, fluent mapping / Classes
- classes, XML-based mapping / Classes
- class tag / Classes
- CLR
- about / What is a model
- code
- NHibernate, configuring in / Time for action – Configuring NHibernate in code
- collections, fluent mapping / Collections
- columns
- Command object
- about / Session
- Command Query Responsibility Segregation (CQRS) pattern
- about / CQRS
- commercial support, NHibernate / Is there commercial support available
- Commit method / Why do we call Commit?
- common mistakes, NHibernate
- lazy loaded parts, accessing after closing session / Accessing lazy loaded parts after the session is closed
- whole database, loading / Did I just load the whole database?
- common mistakes, NHibernate
- verbose mappings / Requesting the obvious
- unnecessary attributes / Requesting the obvious
- wrong mapping / Wrong mapping for read-only access
- dependent / Blindly relying on NHibernate
- implicit transaction, using / Using implicit transactions
- database-generated IDs, using / Using database-generated IDs
- LINQ, using / Using LINQ to NHibernate the wrong way
- troubles, with lazy loading / The trouble with lazy loading
- select (n+1) problem / The select (n+1) problem
- domain model, using for r/w operations / Using one model for read and write operations
- phantom update / Phantom updates
- NHibernate, using for persisting any type of data / Using NHibernate to persist any type of data
- complex business rules
- validating / Validating complex business rules, Enforcing always valid entities
- valid entities, enforcing / Enforcing always valid entities
- validation classes / Using validation classes
- configuration, NHibernate
- need for / Why do we need a configuration?
- configuration elements, NHibernate
- about / Elements of the configuration
- database / Which database do we want to use?
- proxy factory / What byte code provider and proxy factory?
- byte code provider / What byte code provider and proxy factory?
- ConfORM
- about / What is new in NHibernate 3.0, Using ConfORM
- domain, mapping with / Time for action – Using ConfORM to map our domain, What just happened?
- constraints
- about / Constraints
- not null / Constraints
- data type / Constraints
- check / Constraints
- foreign key / Constraints
- adding, to product table / Time for action – Adding a constraint to the Product table, What just happened?
- Count() method / Executing multiple queries in a batch
- CreateCriteria method / Eager loading versus lazy loading
- CreateData method / Time for action – Preparing the system
- CreateQuery method / Hibernate Query Language
- CreateSchema method / Time for action – Creating the database
- criteria queries
- about / Criteria queries
- criteria query API
- about / How can we get to our data?
- Customer entity
D
- data
- about / What is a database schema?, Laying the foundation – table layouts
- loading, on demand / Loading data on demand
- reading, from database / Reading data from the database
- updating, in database / Updating existing data
- retrieving, with QueryOver API / Time for action – Using QueryOver to retrieve data
- selecting, for validation / What data?
- locations, for validating / Where to validate?
- database
- creating / Time for action – Creating the database, What just happened?
- session, opening to / Time for action – Opening a session to the database, What just happened?
- objects, persisting to / Persisting objects to the database
- category, adding to / Time for action – Adding a new category to the database, What just happened?
- reading from / Reading from the database
- category list, loading from / Time for action – Loading the list of all categories from the database, What just happened?
- new data, adding to / Adding new data to the database
- data, reading from / Reading data from the database
- data, updating in / Updating existing data
- about / What about the database?, Which database do we want to use?
- including, in tests / What about the database?
- database-generated IDs
- avoiding / Do not use database-generated IDs
- database entity
- database owner
- about / Who owns the database?
- database schema
- creating / Creating the database schema, Time for action – Creating the database, What just happened?
- about / What is a database schema?, What is mapping?
- OrderingSystem database, creating / Time for action – Creating the OrderingSystem database
- database schema creation scripts
- creating / Creating database schema creation scripts
- database session
- versus NHibernate session / NHibernate session versus database session
- database table
- entity, mapping to / Classes
- database tests
- SQLite, using in / Time for action – Using SQLite in our tests, What just happened?
- database trigger
- data type / Constraints
- data types, table columns / Data types of table columns
- DDL
- Delete method / Deleting data
- development environment, NHibernate
- setting up / Prepare our development environment
- Discontinued method / Executing multiple queries in a batch
- DML
- domain
- mapping, with ConfORM / Time for action – Using ConfORM to map our domain, What just happened?
- domain model
- DriverConnectionProvider class / Which database do we want to use?
E
- eager loading
- versus lazy loading / Eager loading versus lazy loading
- embedded resource / XML-based mapping
- EndRequest handler / Using implicit transactions
- entities
- about / First level cache or identity map
- refreshing, in cache / Refreshing entities in the cache
- entity
- about / Entity
- applications / Entity
- creating / Creating an entity
- base entity, creating / Time for action – Creating a base entity, What just happened?
- customer entity, creating / Time for action – Creating a Customer entity, What just happened?
- mapping, to database table / Classes
- Entity Framework
- about / What is NHibernate
- entity level settings, fluent mapping / Entity level settings
- Entity Relationship Diagram (ERD)
- about / Model first versus data first
- environment
- preparing, for testing / Preparing our environment for testing
- Equals method / Time for action – Creating a Name value object, Time for action – Creating a base entity
- ETL tool / Who owns the database?
- exceptions
- handling / Handling exception
- ExecuteUpdate method / Bulk data changes
- existing record
- deleting, from database / Deleting data
- ExposeConfiguration method / Time for action – Creating the database
F
- features, NHibernate 3.0 / What is new in NHibernate 3.0
- Fetch method / Eager loading versus lazy loading
- first level cache
- fluent mapping
- about / Fluent mapping, Fluent mapping
- advantages / Fluent mapping
- disadvantages / Fluent mapping
- expressions trees / Expression trees – please explain
- classes / Classes
- entity level settings / Entity level settings
- ID columns / ID columns
- properties / Properties
- references / References
- collections / Collections
- many-to-many relations, mapping / Mapping many-to-many relations
- value objects, mapping / Mapping value objects, Time for action – Mapping our domain
- Fluent NHibernate
- about / Prepare our development environment, Fluent mapping, Use mapping conventions
- URL, for downloading / Prepare our development environment
- mapping code, defining / Time for action – Creating the mapping classes
- auto mapping, performing with / Auto-mapping with Fluent NHibernate
- mapping, testing with / Testing the mapping with Fluent NHibernate, Time for action – Creating the base for testing
- NHibernate, configuring with / Configuring NHibernate with Fluent NHibernate
- FNHConfigurationSample.sln / Configuring NHibernate with Fluent NHibernate
- foreach loop / The LINQ to NHibernate provider
- foreign key
- about / Relations
- foreign key constraints / Constraints
- foreign key conventions / Foreign key conventions
- full table scan
- about / Indices
G
- Genome
- about / What is NHibernate
- GetHashCode method / Time for action – Creating a Name value object, Time for action – Creating a base entity
- Get method
- versus Load method / Get versus Load
- given-when-then syntax
- Given method / Preparing our environment for testing
- Global Unique Identifiers (GUIDs) / Using database-generated IDs
- Google Big Table / What is a database schema?
- group by keyword / Hibernate Query Language
- GroupBy method / Grouping records
- GuidComb generator / ID columns, Using database-generated IDs
- Guid generator / ID columns
- GUID generators / Adding new data to the database
H
- hashtable
- High-Low generator / Time for action – Mapping our domain
- HiLo generator / ID columns, Using database-generated IDs
- HiLo method / ID columns
- HQL
I
- IBM DB/2
- about / Why do we need a configuration?
- ICriteria API / What is new in NHibernate 3.0
- ID columns, fluent mapping / ID columns
- ID conventions
- about / ID conventions
- Id method / ID columns
- ID property / Time for action – Creating a base entity
- id tag / Properties
- IEnumerable<T> interface / The LINQ to NHibernate provider
- impedance mismatch
- about / What is NHibernate, What is mapping?
- in-memory mode / Time for action – Using SQLite in our tests
- in-memory objects
- index
- adding, SSMS visual designer used / Time for action – Adding an index using the designer, What just happened?
- script, adding to / Time for action – Creating a script to add an index, What just happened?
- indices
- about / Indices
- InnerException property / Handling exception
- inner join / Eager loading versus lazy loading
- installing
- NuGet Package Manager Extension / Time for action – Using property validation
- Integrate keyword / Time for action – Using Loquacious to configure NHibernate
- IoC container
- about / Web-based applications
- IPropertyConvention interface / Property conventions
- IQueryable<T> interface / The LINQ to NHibernate provider
- IQuery interface / Bulk data changes
- IsComponent method / Auto-mapping with Fluent NHibernate
- ISession interface / Testing queries, Defining the root of our query, Hibernate Query Language
L
- lazy attribute
- about / Lazy loading properties
- lazy evaluation
- about / Defining the root of our query
- lazy loading
- about / The trouble with lazy loading
- lazy loading technique
- about / Prepare our development environment, A word about lazy loading, Loading data on demand, What byte code provider and proxy factory?
- proxies / Proxies
- properties / Lazy loading properties
- versus eager loading / Eager loading versus lazy loading
- left join fetch operation / Eager loading versus lazy loading
- left outer join / Eager loading versus lazy loading
- Length attribute / Defining validation rules
- LineItems collection / Collections
- LinFu
- LINQ
- LINQ provider / What is new in NHibernate 3.0
- LINQ query
- executing, immediately / Forcing a LINQ query to execute immediately
- LINQ to NHibernate
- LINQ to NHibernate provider
- about / How can we get to our data?, The LINQ to NHibernate provider
- record set, filtering / Filtering a set of records
- record set, mapping / Mapping a set of records
- resulting dataset, sorting / Sorting the resulting set
- records, grouping / Grouping records
- LLBLGen Pro
- about / What is NHibernate
- Load method
- about / Reading data from the database
- versus Get method / Get versus Load
- log
- need for / Why do we need to log?
- Log4Net
- about / Logging with Log4Net
- logging, performing with / Time for action – Adding logging to our application, What just happened?
- log files
- analyzing / Analyzing log files
- logging
- about / Logging, Logging with Log4Net
- performing, with Log4Net / Time for action – Adding logging to our application, What just happened?
- adding, to application / Time for action – Adding logging to our application, What just happened?
- setting up, for NHibernate / Setting up logging for NHibernate, Time for action – Enable logging in NHibernate, What just happened?
- Loquacious
- NHibernate, configuring with / Configuring NHibernate with Loquacious, Time for action – Using Loquacious to configure NHibernate, What just happened?
M
- many-to-many relations / Relations
- about / Many-to-many
- mapping / Mapping many-to-many relations
- Map function / Expression trees – please explain
- mapping
- about / What is mapping?, Where are our mappings?
- types / Types of mapping
- testing / Testing the mapping
- testing, with Fluent NHibernate / Testing the mapping with Fluent NHibernate, Time for action – Creating the base for testing
- mapping, types
- XML-based / XML-based mapping, XML mapping, Getting started
- attribute-based / Attribute-based mapping
- fluent / Fluent mapping, Fluent mapping
- auto-mapping / Mapping by convention
- mapping classes
- mapping conventions
- using / Use mapping conventions
- ID conventions / ID conventions
- property conventions / Property conventions
- foreign key conventions / Foreign key conventions
- implementing / Have a go hero – Implement your own convention
- mapping information
- about / Where are our mappings?
- mapping tests
- base framework, creating for / Time for action – Creating the base for testing, What just happened?
- materialized view
- about / Views
- MbUnit
- MemCache
- Message parameter / Defining validation rules
- Microsoft SQL Server
- about / What is a database schema?
- Microsoft SQL Server 2008 R2 Express
- installing / Prepare our development environment
- mock
- about / Testing queries
- model
- defining / Defining a model
- product inventory model, creating / Time for action – Creating the product inventory model, What just happened?
- mapping / Mapping our model, Time for action – Creating the mapping classes
- about / What is a model, What is mapping?
- elements / Elements of a model
- order entity model / The order entry model
- order entity model, implementing / Time for action – Implementing an order entry model
- model, elements
- entity / Entity
- value objects / Value object
- Model-View-Presenter (MVP) pattern
- about / WinForm or WPF applications
- MonoDevelop
- MS SQL Server
- multiple queries
- executing, in batch / Executing multiple queries in a batch
- MySQL
- about / Why do we need a configuration?
N
- 1NF
- about / Normal form
- 2NF
- about / Normal form
- 3NF
- about / Normal form
- name attribute / Classes
- Name value object
- creating / Time for action – Creating a Name value object, What just happened?
- about / Owns or contains
- natural keys
- about / Entity
- new data
- adding, to database / Adding new data to the database
- NHibernate
- about / What is NHibernate
- benefits / Why would I use it
- documentation / Is there documentation available
- URL, for meta blog / Is there documentation available
- URL, for FAQ / Is there documentation available
- mailing list / Can I get help using NHibernate
- help / Can I get help using NHibernate
- commercial support / Is there commercial support available
- users / Who uses it
- development environment, setting up / Prepare our development environment
- relational databse support / Prepare our development environment
- lazy loading technique / Prepare our development environment, A word about lazy loading, Loading data on demand, Lazy loading properties
- model, defining / Defining a model
- model, mapping / Mapping our model, Time for action – Creating the mapping classes
- database schema, creating / Creating the database schema, Time for action – Creating the database, What just happened?
- session factory, creating / Time for action – Creating a session factory, What just happened?
- session, opening to database / Time for action – Opening a session to the database, What just happened?
- objects, persisting to database / Persisting objects to the database
- category list, loading from database / Time for action – Loading the list of all categories from the database, What just happened?
- model / What is a model
- mappings / What is mapping?
- database schema creation scripts, creating / Creating database schema creation scripts
- sessions / What are sessions and transactions, Session
- transactions / What are sessions and transactions, Transaction
- session factory / The session factory
- session, creating / Creating your first session
- caching mechanisms / First level cache or identity map, Second level cache
- exceptions, handling / Handling exception
- second level cache, implementing / Second level cache implementations
- second level cache, using / Time for action – Using a second level cache, What just happened?
- database, including in tests / What about the database?
- environment, preparing for testing / Preparing our environment for testing
- queries, testing / Testing queries
- logging / Logging
- log, need for / Why do we need to log?
- logging, setting up for / Setting up logging for NHibernate, Time for action – Enable logging in NHibernate, What just happened?
- log files, analyzing / Analyzing log files
- SQL Server Profiler / Using SQL Server Profiler
- XML configuration / XML configuration, Time for action – Configuring NHibernate using XML, What just happened?
- configuring, XML used / Time for action – Configuring NHibernate using XML, What just happened?
- configuring, in code / Time for action – Configuring NHibernate in code
- configuring, with Loquacious / Configuring NHibernate with Loquacious, Time for action – Using Loquacious to configure NHibernate, What just happened?
- Fluent configuration / Configuring NHibernate with Loquacious, Time for action – Using Loquacious to configure NHibernate, What just happened?
- configuring, with Fluent NHibernate / Configuring NHibernate with Fluent NHibernate
- convention, over configuration / Convention over configuration
- criteria queries / Criteria queries
- strongly-typed criteria queries / Criteria queries, Strongly-typed criteria queries
- untyped criteria queries / Untyped criteria queries
- HQL / Hibernate Query Language
- multiple queries, executing, in batch / Executing multiple queries in a batch
- lazy loading, versus eager loading / Eager loading versus lazy loading
- data, modifying in bulk / Bulk data changes
- NHibernate
- verbose mappings, avoiding / Requesting the obvious
- nhibernate-mapping.xsd file / XML-based mapping
- NHibernate.Validator / Configuring the validator
- NHibernate 3.0
- features / What is new in NHibernate 3.0
- NHibernate 3.1.0
- URL, for downloading / Prepare our development environment
- NHibernate configuration
- need for / Why do we need a configuration?
- elements / Elements of the configuration
- NHibernate contribution project
- resources / Where do I get it
- NHibernate Contributions
- about / Validating single properties
- NHibernate logo / What is NHibernate
- NHibernate Profiler
- benefits / Monitoring and profiling with NHibernate Profiler
- URL, for downloading / Monitoring and profiling with NHibernate Profiler
- profiling with / Monitoring and profiling with NHibernate Profiler, Time for action – Adding NHibernate Profiler support
- monitoring with / Monitoring and profiling with NHibernate Profiler, Time for action – Adding NHibernate Profiler support
- about / Time for action – Using Loquacious to configure NHibernate
- NHibernate Profiler support
- NHibernate project
- resources / Where do I get it
- NHibernate session
- about / Session
- versus database session / NHibernate session versus database session
- NHibernate session management
- about / Session management
- NHibernate Users Mailing List group
- about / Can I get help using NHibernate
- normal form
- about / Normal form
- 1NF / Normal form
- 3NF / Normal form
- 2NF / Normal form
- normalization
- about / Normal form
- not null constraints / Constraints
- NuGet logo / Where do I get it
- NuGet Package Manager Extension
- installing / Time for action – Using property validation
- NuGet project
- about / Where do I get it
- null
- about / Table columns
- NUnit
O
- objects
- about / What is NHibernate
- persisting, to database / Persisting objects to the database
- one-to-many relations
- about / One-to-many, Relations
- one-to-many restriction criteria
- about / Untyped criteria queries
- one-to-one relations
- about / One-to-one, Relations
- OpenSession method / Creating your first session
- open source project (OSS)
- about / Where do I get it
- Oracle
- OrderApprovalValidator class / Using validation classes
- OrderByDescending method / Sorting the resulting set
- order by keyword / Hibernate Query Language
- OrderBy method / Sorting the resulting set
- order entry model
- about / The order entry model
- implementing / Time for action – Implementing an order entry model
- order entry system
- schema, creating for / Time for action – Creating a schema for the order entry system, What just happened?
- OrderingSystem database
- creating / Time for action – Creating the OrderingSystem database
- Categories table, creating in / Time for action – Creating the Categories table, What just happened?
- ORM framework
- about / What is NHibernate
- OSS options
P
- PersistenceSpecification class / Testing the mapping with Fluent NHibernate
- persistent entities / Time for action – Creating a base entity
- Persist method / Adding new data to the database
- phantom update
- about / Phantom updates
- causing / Time for action – Causing a phantom update
- POCO
- about / What is a model
- POI
- about / Entity
- POID generator
- post mortem analysis / Why do we need to log?
- predicate
- about / Filtering a set of records
- presentation layer / Where to validate?
- Prevalence
- primary key
- about / Relations
- product inventory model
- product table
- constraints, adding to / Time for action – Adding a constraint to the Product table, What just happened?
- property conventions / Property conventions
- property tag / Properties
- property validation
- proxy
- about / Proxies
- proxy factory
Q
- QL Server Management Studio (SSMS)
- quality assurance (QA)
- about / Why do we need to log?
- queries
- testing / Testing queries
- query
- root, defining for / Defining the root of our query
- QueryOver API / What is new in NHibernate 3.0
- about / How can we get to our data?
- data, retrieving with / Time for action – Using QueryOver to retrieve data
R
- RDBMS
- about / What is a database schema?
- ReadOnly() method / Wrong mapping for read-only access
- record
- deleting, from database / Deleting data
- records
- grouping / Grouping records
- record set
- filtering / Filtering a set of records
- mapping / Mapping a set of records
- reduce function
- about / Filtering a set of records
- references, fluent mapping / References
- relational database
- about / What is NHibernate
- relational table / Relations
- relations
- types / One-to-many, One-to-one, Many-to-many, Relations
- about / Relations
- relations, types
- one-to-many / One-to-many, Relations
- one-to-one / One-to-one, Relations
- many-to-many / Many-to-many, Relations
- ReorderLevel property / Time for action – Causing a phantom update
- report
- creating, LINQ to NHibernate used / Creating a report using LINQ to NHibernate, Time for action – Preparing the system, What just happened?, Time for action – Creating the reports, What just happened?
- ReSharper
- about / Fluent mapping
- resulting dataset
- sorting / Sorting the resulting set
- root
- defining, for query / Defining the root of our query
- rows
S
- SaveCategoryValidator class / Time for action – Validating user input
- Save method / Adding new data to the database
- schema
- creating, for order entry system / Time for action – Creating a schema for the order entry system, What just happened?
- SchemaAction.None() statement / Wrong mapping for read-only access
- SchemaExport class / Time for action – Creating a session and doing some CRUD, Configuring the validator, Wrong mapping for read-only access
- scope
- about / What is a model
- script
- defining, for product table creation / Time for action – Defining a script to create the Products table
- creating, for check constraint addition / Time for action – Creating a script to add a check constraint
- adding, to index / Time for action – Creating a script to add an index, What just happened?
- second level cache
- about / Second level cache
- enabling / Second level cache
- cache regions / Cache regions
- implementing / Second level cache implementations
- using / Time for action – Using a second level cache, What just happened?
- second level caching
- about / Do we use second level caching?
- select (n+1) problem
- about / The select (n+1) problem
- SelectedCategory property / Time for action – Validating user input
- Select function / Mapping a set of records
- SELECT statement
- session
- opening, to database / Time for action – Opening a session to the database, What just happened?
- creating / Creating your first session, Time for action – Creating a session and doing some CRUD
- Commit method / Why do we call Commit?
- entity, removing from first level cache / Clearing the cache
- CRUD operations, performing / Time for action – Creating a session and doing some CRUD
- session factory
- creating / Time for action – Creating a session factory, What just happened?
- about / The session factory
- session management
- about / Session management
- implementing, for web application / Web-based applications, Time for action –Implementing session management for a web application, What just happened?
- WPF applications / WinForm or WPF applications
- WinForm / WinForm or WPF applications
- Windows services / Windows services
- session object
- about / Session
- new data, adding to database / Adding new data to the database
- data, reading from database / Reading data from the database
- sessions
- creating / Creating a session factory
- about / What are sessions and transactions, Session
- SetDecimal method / Hibernate Query Language
- SetMaxResults function / Untyped criteria queries, Hibernate Query Language
- SetMinResult method / Hibernate Query Language
- SetProjection method / Untyped criteria queries
- SetString method / Hibernate Query Language
- SetUp attribute / Preparing our environment for testing
- SharpDevelop
- simple domain
- mapping, XML used / Time for action – Mapping a simple domain using XML, What just happened?
- single properties
- validating / Validating single properties
- single responsibility principle (SRP)
- about / Using validation classes
- singleton pattern
- about / Web-based applications
- Spring.Net
- SQL
- about / How can we get to our data?
- SQLite
- about / Download SQLite
- URL, for downloading / Download SQLite
- downloading / Download SQLite
- using, in database tests / Time for action – Using SQLite in our tests, What just happened?
- SQL Server driver
- SQL Server Profiler
- using / Using SQL Server Profiler
- SSMS
- URL, for downloading / Prepare our development environment
- SSMS visual designer
- index, adding with / Time for action – Adding an index using the designer, What just happened?
- stored procedure
- strongly-typed criteria queries
- about / Criteria queries
- stub
- about / Testing queries
- Subsonic
- about / What is NHibernate
- surrogate keys
- about / Entity
- sut
- about / Testing queries
- SysCache
- SysCache2
T
- table
- table attribute / Classes
- table columns
- about / Table columns
- data types / Data types of table columns
- table layouts
- Take function / Limiting the number of records returned
- TearDown attribute / Preparing our environment for testing
- test driven development (TDD)
- about / Why do we need tests?
- TestFixtureTearDown attribute / Preparing our environment for testing
- testing
- environment, preparing for / Preparing our environment for testing
- tests
- need for / Why do we need tests?
- database, including in / What about the database?
- ThenByDescending method / Sorting the resulting set
- ThenBy method / Sorting the resulting set
- ToDictionary function / Forcing a LINQ query to execute immediately
- ToList() method / Reading data from the database
- transaction.Commit() statement / Why do we call Commit?
- transaction object
- transactions
- about / What are sessions and transactions, Transaction
- example / Transaction
- ACID property / Transaction
- characteristics / Transaction
- transient entities / Time for action – Creating a base entity
U
- UI validation logic / Where to validate?
- undefined value
- about / Table columns
- Unit of Work
- unit test
- unit test, parts
- UnsavedValue function / ID columns
- untyped criteria queries / Untyped criteria queries
- user input
- validating / Time for action – Validating user input, What just happened?
- using statement / Creating your first session
V
- validation
- about / What is validation and why is it so important?
- need for / Why validate?
- data, selecting for / What data?
- enforcing / Enforcing validation
- validation classes
- using / Using validation classes
- user input, validating / Time for action – Validating user input, What just happened?
- validation messages
- localizing / Time for action – Using property validation
- validation rules
- defining / Defining validation rules
- configuring, fluently / Fluently configure validation rules
- validator
- configuring / Configuring the validator
- value objects
- about / Value object
- samples / Value object
- Name value object, creating / Time for action – Creating a Name value object, What just happened?
- mapping / Mapping value objects, Time for action – Mapping our domain, Mapping value objects, Time for action – Mapping a simple domain using XML, What just happened?
- value type
- Velocity
- VerifyTheMappings method / Testing the mapping with Fluent NHibernate
- views
- about / Views
- Visual Studio
- about / Fluent mapping
W
- Web.config file / XML configuration
- web application
- session management, implementing for / Web-based applications, Time for action –Implementing session management for a web application, What just happened?
- When method / Preparing our environment for testing
- Where keyword / Filtering a set of records
X
- XML
- simple domain, mapping with / Time for action – Mapping a simple domain using XML, What just happened?
- used, for configuring NHibernate / Time for action – Configuring NHibernate using XML, What just happened?
- XML-based mapping
- about / XML-based mapping, XML mapping, Getting started
- classes / Classes
- properties / Properties
- ID columns / ID columns
- one-to-many relations / One-to-many relations
- many-to-many relations / Many-to-many relations
- value objects, mapping / Mapping value objects, Time for action – Mapping a simple domain using XML, What just happened?
- XUnit