Поделиться через


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 будет предложено рассматривать экземпляры класса как доступные только для чтения для отправки изменений в базу данных.

Если вы назначаете несколько членов класса с помощью этого свойства, ключ считается составным из связанных столбцов.

Примечание

LINQ to SQL не поддерживает вычисляемые столбцы в качестве первичных ключей.

Применяется к