NHibernate class property has the following properties:
Attributes
Attributes of the object.
Documentation
LongDescription
Detailed description of the property.
Summary
Brief description of the property.
Getter Modifier
Specifies the getter accessibility level. Can accept the following values: Public, ProtectedInternal, Internal, Protected, Private.
Setter Modifier
Specifies the setter accessibility level. Can accept the following values: Public, ProtectedInternal, Internal, Protected, Private.
Generate Data Member Attribute
Specifies whether the property should be serialized. Can accept the following values: True, or False.
Unimplemented
Determines whether to exclude the definition and initialization code of the property from the class. Can accept the following values: True, or False.
Access
Specifies the strategy used to access the property values. Can accept the following values: Default (Property), Property, Field or Nosetter.
Enum Storage Mode
Available only for properties of an enum type. Specifies how the property value is stored in the database - as a string (storing enum member names) or as an integer value. It can have the following values:
• | Default - the mode is not specified explicitly for this property. It is stored depending on the model's Default Enum Storage Mode property. The latter's value is displayed in parentheses. |
• | Integer - the property values are stored as integer values (enum member values). |
• | String - the property values are stored as strings (enum member names). |
Generated By Database
(available for non-key properties) specifies whether this property value as actually generated by the database. Can accept the following values: Never, Insert, or Always.
Lazy
Enables or disables lazy fetching. Can accept the following values: True, or False.
Name
Name of the property.
Natural Id
Specifies that the property is a natural identifier of the class. Can accept the following values: True or False.
Nullable
Determines whether the property is nullable. Can accept the following values: True or False.
Primary Key
Specifies that the property is (a part of) the primary key. Can accept the following values: True or False.
Type
Specifies the type of the property. Can accept the following values: AnsiChar, AnsiString, Binary, BinaryBlob, Boolean, Byte, Char, CultureInfo, Currency, Date, DateTime, DateTime2, DateTimeOffset, DbTimestamp, LocalDateTime, UtcDateTime, Decimal, Double, Guid, Int16, Int32, Int64, Object, SByte, Serializable, Single, String, StringClog, Ticks, Time, TimeAsTimeSpan, TimeSpan, Timestamp, TrueFalse, Type, UInt16, UInt32, UInt64, YesNo, Complex types and Enum types.
Version
Specifies that this property holds the row version. Can accept the following values: True or False.
Primary Key
(available only for non-key properties)
Generator
Specifies the strategy to be used when generating unique IDs for each row. Can accept the following values: assigned (the generator set for the whole model), foreign, guid, guid.comb, guid.native, hilo, identity, increment, native, select, seqhilo, sequence, sequence-identity, uuid.hex, uuid.string and custom.
Unsaved Value
This property is available only for Primary Key properties or for properties with Version=True.
It is a property value which indicates that an instance is newly instantiated (unsaved), distinguishing it from detached instances that were saved or loaded in a previous session.
The allowed values of unsaved value are:
• | any - always save. |
• | none - always update. |
• | null - save when identifier is null. |
• | valid identifier value - save when identifier is null or equals the user-defined value. |
• | undefined - if set for version or timestamp, then identifier check is used. |
Column
Specifies the database column corresponding to this property.
Check
SQL check constraint on the column.
Default Value
Default value (SQL expression) for the column.
Fixed Length
Indicates that the column stores fixed-length textual or binary data. Can accept the following values: True or False.
Index Name
Name of a (multi-column) index.
Length
Column length.
Name
Name of the database column.
Not Null
Specifies that the column is non-nullable. Can accept the following values: True or False.
Precision
Displays the maximal number of digits used by the column data type. Applicable to the numeric fields.
Scale
Displays the number of digits to the right of the decimal point in a number used by the column data type. Applicable to the numeric fields.
SQL Type
Specifies the type of the column in the database table.
Unicode
Specifies that the column stores data in Unicode format. Can accept the following values: True or False.
Unique
Specifies whether the column has a unique constraint. Can accept the following values: True or False.
Unique Key
Name of a multi-column unique constraint.
Formula
(available for non-key properties) SQL expression that defines the value for a computed property.
Join Table
(available for non-key properties) specifies the name of the table this property belongs to.
Insert
(available for non-key properties) Specifies that the mapped columns should be included into an SQL INSERT statement. Can accept the following values: True or False.
OptimisticLock
(available for non-key properties) Specifies whether updates to this property require acquisition of the optimistic lock. Can accept the following values: True or False.
Update
(available for non-key properties) Specifies that the mapped columns should be included into an SQL UPDATE statement. Can accept the following values: True or False.
Validate Expression
Validates that the property conforms to the specified regular expression.
Validate Format
Validates that the property conforms to the selected format.
Validate Max Length
Validates the string property maximum length.
Validate Max Value
Validates the property maximum value.
Validate Min Length
Validates the string property minimum length.
Validate Min Value
Validates the property minimum value.
Validate Required
Specifies whether a property value is required. Can accept the following values: True or False.