ColumnAttribute.IsPrimaryKey Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает, представляет ли этот член класса столбец, который является частью или всем первичным ключом таблицы.
public:
property bool IsPrimaryKey { bool get(); void set(bool value); };
public bool IsPrimaryKey { get; set; }
member this.IsPrimaryKey : bool with get, set
Public Property IsPrimaryKey As Boolean
Значение свойства
По умолчанию = false.
Примеры
[Column(Storage="_ProductID", AutoSync=AutoSync.OnInsert, DbType="Int NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
public int ProductID
{
get
{
return this._ProductID;
}
set
{
if ((this._ProductID != value))
{
this.OnProductIDChanging(value);
this.SendPropertyChanging();
this._ProductID = value;
this.SendPropertyChanged("ProductID");
this.OnProductIDChanged();
}
}
}
<Column(Storage:="_ProductID", DbType:="Int NOT NULL", IsPrimaryKey:=true, IsDbGenerated:=true)> _
Public Property ProductID() As Integer
Get
Return Me._ProductID
End Get
Set
If ((Me._ProductID = value) _
= false) Then
If Me._Product.HasLoadedOrAssignedValue Then
Throw New System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException
End If
Me.OnProductIDChanging(value)
Me.SendPropertyChanging
Me._ProductID = value
Me.SendPropertyChanged("ProductID")
Me.OnProductIDChanged
End If
End Set
End Property
Комментарии
Предполагая класс сущности, необходимо предоставить хотя бы один член с этим атрибутом, и его необходимо сопоставить с первичным ключом или уникальным ключом в соответствующей таблице или представлении. Сбой этого предложит LINQ to SQL рассматривать экземпляры класса как доступные только для чтения для отправки изменений в базу данных.
Если вы назначаете несколько членов класса с помощью этого свойства, ключ считается составным из связанных столбцов.
Note
LINQ to SQL не поддерживает вычисляемые столбцы в качестве первичных ключей.