ColumnAttribute.IsPrimaryKey Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece un valor que indica si este miembro de clase representa una columna que es parte de la clave principal de la tabla o toda la clave.
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
Valor de propiedad
Valor predeterminado: false
.
Ejemplos
[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
Comentarios
Suponiendo que una clase de entidad, debe proporcionar al menos un miembro con este atributo y debe asignarse a la clave principal o a una clave única en la tabla o vista correspondientes. Si no se hace esto, LINQ to SQL considerar instancias de la clase como de solo lectura para enviar cambios a la base de datos.
Si designa más de un miembro de la clase mediante esta propiedad, se dice que la clave es una composición de las columnas asociadas.
Nota
LINQ to SQL no admite las columnas calculadas como claves principales.