NPersistence Reference Guide
Assembly: NPersistence (in NPersistence.dll) Version: 2.0.0.0 (2.0.0.0)
Specifies a mapping to an entity that is a map key.
Namespace: NPersistenceThe map key join column is in the collection table, join table, or table of the target entity that is used to represent the map. If no MapKeyJoinColumn annotation is specified, a single join column is assumed and the default values apply.
Examples
CopyC#
Example 1: [Entity] public class Company { [Id] int id; ... [OneToMany] // unidirectional [JoinTable(name="COMPANY_ORGANIZATION")] [JoinColumn(AttributeRef="COMPANY_ORGANIZATION",name="COMPANY")] [JoinColumn(AttributeRef="COMPANY_ORGANIZATION",name="VICEPRESIDENT", Inverse=true)] [MapKeyJoinColumn(name="DIVISION")] Dictionary<Division, VicePresident> organization; } Example 2: [Entity] public class VideoStore { [Id] int id; String name; Address location; ... [ElementCollection] [CollectionTable(name="INVENTORY")] [JoinColumn(AttributeRef="INVENTORY",name="STORE")] [Column(name="COPIES_IN_STOCK")] [MapKeyJoinColumn(name="MOVIE", referencedColumnName="ID")] Dictionary<Movie, Integer> videoInventory; ... } [Entity] public class Movie { [Id] long id; String title; ... } Example 3: [Entity] public class Student { [Id] int studentId; ... [ManyToMany] // students and courses are also many-many [JoinTable(name="ENROLLMENTS")] [JoinColumn(AttributeRef="ENROLLMENTS",name="STUDENT")] [JoinColumn(AttributeRef="ENROLLMENTS",name="SEMESTER", Inverse=true)] [MapKeyJoinColumn(name="COURSE")] Dictionary<Course, Semester> enrollment; ... }
Assembly: NPersistence (in NPersistence.dll) Version: 2.0.0.0 (2.0.0.0)
Syntax
C# |
public sealed class MapKeyJoinColumn : Attribute
Members
All Members | Constructors | Fields |
Public Protected | Instance Static | Declared Inherited | XNA Framework Only .NET Compact Framework Only |
Member | Description | |
---|---|---|
MapKeyJoinColumn()()()() | Initializes a new instance of the MapKeyJoinColumn class | |
ColumnDefinition | (Optional) The SQL fragment that is used when generating the DDL for the
column.
Defaults to SQL generated by the provider for the column.
| |
Insertable | (Optional) Whether the column is included in SQL INSERT statements
generated by the persistence provider.
| |
Name | (Optional) The name of the foreign key column for the map
key. The table in which it is found depends upon the
context.
| |
Nullable | (Optional) Whether the foreign key column is nullable.
| |
ReferencedColumnName | (Optional) The name of the column referenced by this foreign key column.
The referenced column is in the table of the target entity.
Default (only applies if single join column is being
used.) The same name as the primary key column of the
referenced table
| |
Table | (Optional) The name of the table that contains the foreign key column.
| |
Unique | (Optional) Whether the property is a unique key. This is a
shortcut for the UniqueConstraint annotation
at the table level and is useful for when the unique key
constraint is only a single field.
| |
Updatable | (Optional) Whether the column is included in SQL UPDATE statements
generated by the persistence provider.
|
Inheritance Hierarchy
System..::..Object
System..::..Attribute
NPersistence..::..MapKeyJoinColumn
System..::..Attribute
NPersistence..::..MapKeyJoinColumn