Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
LINQ to SQL koppelt een SQL Server-database aan een LINQ bij het SQL-objectmodel door attributen toe te passen of door een extern mappingbestand te gebruiken. In dit onderwerp wordt de benadering op basis van kenmerken beschreven.
In de meest elementaire vorm matcht LINQ to SQL een database met een DataContext, een tabel met een klasse, en kolommen en relaties met eigenschappen van die klassen. U kunt ook kenmerken gebruiken om een overnamehiërarchie in uw objectmodel toe te wijzen. Zie Het objectmodel genereren in Visual Basic of C# voor meer informatie.
Ontwikkelaars die Visual Studio gebruiken, voeren doorgaans toewijzingen op basis van kenmerken uit met behulp van Object Relational Designer. U kunt ook het opdrachtregelprogramma SQLMetal gebruiken of u kunt de kenmerken zelf codeeren. Zie Het objectmodel genereren in Visual Basic of C# voor meer informatie.
Opmerking
U kunt ook toewijzen door een extern XML-bestand te gebruiken. Zie Externe toewijzing voor meer informatie.
In de volgende secties worden toewijzingen op basis van kenmerken gedetailleerder beschreven. Zie de System.Data.Linq.Mapping naamruimte voor meer informatie.
DatabaseAttribute-kenmerk
Gebruik dit kenmerk om de standaardnaam van de database op te geven wanneer er geen naam wordt opgegeven door de verbinding. Dit kenmerk is optioneel, maar als u het gebruikt, moet u de Name eigenschap toepassen, zoals beschreven in de volgende tabel.
| Vastgoed | Typologie | Verstek | Beschrijving | 
|---|---|---|---|
| Name | Snaar / Touwtje | Zie Name | Wordt gebruikt met Name de eigenschap, geeft de naam van de database op. | 
Zie DatabaseAttribute voor meer informatie.
TableAttribute-attribuut
Gebruik dit kenmerk om een klasse aan te wijzen als een entiteitsklasse die is gekoppeld aan een databasetabel of -weergave. LINQ naar SQL behandelt klassen met dit kenmerk als permanente klassen. In de volgende tabel wordt de Name eigenschap beschreven.
| Vastgoed | Typologie | Verstek | Beschrijving | 
|---|---|---|---|
| Name | Snaar / Touwtje | Dezelfde tekenreeks als klassenaam | Wijst een klasse aan als een entiteitsklasse die is gekoppeld aan een databasetabel. | 
Zie TableAttribute voor meer informatie.
ColumnAttribute-kenmerk
Gebruik dit kenmerk om een lid van een entiteitsklasse aan te wijzen voor een kolom in een databasetabel. U kunt dit kenmerk toepassen op elk veld of elke eigenschap.
Alleen de leden die u als kolommen identificeert, worden opgehaald en behouden wanneer LINQ in SQL wijzigingen in de database opslaat. Leden zonder dit kenmerk worden ervan uitgegaan dat ze niet permanent zijn en niet worden verzonden voor invoegingen of updates.
In de volgende tabel worden de eigenschappen van dit kenmerk beschreven.
| Vastgoed | Typologie | Verstek | Beschrijving | 
|---|---|---|---|
| AutoSync | AutoSync | Nooit | Instrueert de Common Language Runtime (CLR) om de waarde op te halen na een invoeg- of updatebewerking. Opties: Altijd, Nooit, OnUpdate, OnInsert.  | 
| CanBeNull | Booleaan | true | 
Geeft aan dat een kolom null-waarden kan bevatten. | 
| DbType | Snaar / Touwtje | Afgeleid kolomtype van de database | Maakt gebruik van databasetypen en modifiers om het type van de databasekolom op te geven. | 
| Expression | Snaar / Touwtje | Leeg | Definieert een berekende kolom in een database. | 
| IsDbGenerated | Booleaan | false | 
Geeft aan dat een kolom waarden bevat die automatisch door de database worden gegenereerd. | 
| IsDiscriminator | Booleaan | false | 
Geeft aan dat de kolom een discriminatorwaarde bevat voor een LINQ naar SQL-erfenishiërarchie. | 
| IsPrimaryKey | Booleaan | false | 
Hiermee geeft u op dat dit klasselid een kolom vertegenwoordigt die deel uitmaakt van de primaire sleutels van de tabel. | 
| IsVersion | Booleaan | false | 
Hiermee wordt het kolomtype van het lid geïdentificeerd als een tijdstempel of versienummer van de database. | 
| UpdateCheck | Controle van updates | tenzij AlwaysIsVersion is voor een lid | 
Hiermee geeft u op hoe LINQ naar SQL de detectie van optimistische gelijktijdigheidsconflicten nadert. | 
Zie ColumnAttribute voor meer informatie.
Opmerking
De eigenschapswaarden AssociationAttribute en ColumnAttribute Storage zijn hoofdlettergevoelig. Zorg er bijvoorbeeld voor dat waarden die worden gebruikt in het kenmerk voor de eigenschap AssociationAttribute.Storage overeenkomen met het geval voor de bijbehorende eigenschapsnamen die elders in de code worden gebruikt. Dit geldt voor alle .NET-programmeertalen, zelfs voor programmeertalen die doorgaans niet hoofdlettergevoelig zijn, waaronder Visual Basic. Zie voor meer informatie over de eigenschap Storage DataAttribute.Storage.
AssociationAttribute-attribuut
Gebruik dit kenmerk om een eigenschap aan te wijzen die een koppeling in de database vertegenwoordigt, zoals een refererende sleutel naar een primaire sleutel. Voor meer informatie over relaties, zie Instructies voor het toewijzen van databaserelaties.
In de volgende tabel worden de eigenschappen van dit kenmerk beschreven.
| Vastgoed | Typologie | Verstek | Beschrijving | 
|---|---|---|---|
| DeleteOnNull | Booleaan | false | 
Wanneer deze wordt toegepast op een koppeling waarvan de buitenlandse sleutelleden allemaal niet-nulbaar zijn, wordt het object verwijderd wanneer de koppeling op nul wordt gezet. | 
| DeleteRule | Snaar / Touwtje | Geen | Hiermee voegt u verwijderingsgedrag toe op een koppeling. | 
| IsForeignKey | Booleaan | false | 
Indien waar, wijst u het lid aan als de refererende sleutel in een koppeling die een databaserelatie vertegenwoordigt. | 
| IsUnique | Booleaan | false | 
Als waar, geeft dit een uniekheidsbeperking voor de vreemde sleutel aan. | 
| OtherKey | Snaar / Touwtje | Id van de gerelateerde klasse | Wijst een of meer leden van de doelentiteitsklasse aan als sleutelwaarden aan de andere kant van de koppeling. | 
| ThisKey | Snaar / Touwtje | Id van de bevatde klasse | Wijst leden van deze entiteitsklasse aan om de sleutelwaarden aan deze kant van de koppeling weer te geven. | 
Zie AssociationAttribute voor meer informatie.
Opmerking
De eigenschapswaarden AssociationAttribute en ColumnAttribute Storage zijn hoofdlettergevoelig. Zorg er bijvoorbeeld voor dat waarden die worden gebruikt in het kenmerk voor de eigenschap AssociationAttribute.Storage overeenkomen met het geval voor de bijbehorende eigenschapsnamen die elders in de code worden gebruikt. Dit geldt voor alle .NET-programmeertalen, zelfs voor programmeertalen die doorgaans niet hoofdlettergevoelig zijn, waaronder Visual Basic. Zie voor meer informatie over de eigenschap Storage DataAttribute.Storage.
InheritanceMappingAttribute Attribute
Gebruik dit kenmerk om een overnamehiërarchie toe te wijzen.
In de volgende tabel worden de eigenschappen van dit kenmerk beschreven.
| Vastgoed | Typologie | Verstek | Beschrijving | 
|---|---|---|---|
| Code | Snaar / Touwtje | Geen. De waarde moet worden opgegeven. | Geeft de codewaarde van de discriminator op. | 
| IsDefault | Booleaan | false | 
Indien waar, wordt een object van dit type gecreëerd wanneer er geen discriminatorwaarde in de opslag overeenkomt met een van de opgegeven waarden. | 
| Type | Typologie | Geen. De waarde moet worden opgegeven. | Hiermee geeft u het type van de klasse in de hiërarchie. | 
Zie InheritanceMappingAttribute voor meer informatie.
Kenmerk FunctionAttribute
Gebruik dit kenmerk om een methode aan te wijzen die een opgeslagen procedure of door de gebruiker gedefinieerde functie in de database vertegenwoordigt.
In de volgende tabel worden de eigenschappen van dit kenmerk beschreven.
| Vastgoed | Typologie | Verstek | Beschrijving | 
|---|---|---|---|
| IsComposable | Booleaan | false | 
Als dit onwaar is, wordt de toewijzing aan een opgeslagen procedure aangegeven. Als waar, geeft dit de toewijzing aan een door de gebruiker gedefinieerde functie aan. | 
| Name | Snaar / Touwtje | Dezelfde tekenreeks als de naam in de database | Hiermee geeft u de naam van de opgeslagen procedure of door de gebruiker gedefinieerde functie. | 
Zie FunctionAttribute voor meer informatie.
ParameterAttribute-kenmerk
Gebruik dit kenmerk om invoerparameters toe te wijzen aan opgeslagen proceduremethoden.
In de volgende tabel worden de eigenschappen van dit kenmerk beschreven.
| Vastgoed | Typologie | Verstek | Beschrijving | 
|---|---|---|---|
| DbType | Snaar / Touwtje | Geen | Hiermee geeft u het databasetype op. | 
| Name | Snaar / Touwtje | Dezelfde tekenreeks als de parameternaam in de database | Hiermee geeft u een naam voor de parameter. | 
Zie ParameterAttribute voor meer informatie.
Kenmerk ResultTypeAttribute
Gebruik dit kenmerk om een resultaattype op te geven.
In de volgende tabel worden de eigenschappen van dit kenmerk beschreven.
| Vastgoed | Typologie | Verstek | Beschrijving | 
|---|---|---|---|
| Type | Typologie | Geen | Wordt gebruikt voor methoden die in kaart zijn gebracht met opgeslagen procedures die IMultipleResults retourneren. Declareert de geldige of verwachte typetoewijzingen voor de opgeslagen procedure. | 
Zie ResultTypeAttribute voor meer informatie.
Attribuut DataAttribute
Gebruik dit kenmerk om namen en privéopslagvelden op te geven.
In de volgende tabel worden de eigenschappen van dit kenmerk beschreven.
| Vastgoed | Typologie | Verstek | Beschrijving | 
|---|---|---|---|
| Name | Snaar / Touwtje | Hetzelfde als de naam in de database | Hiermee geeft u de naam van de tabel, kolom enzovoort. | 
| Storage | Snaar / Touwtje | Openbare toegangsmethodes | Hiermee geeft u de naam van het onderliggende opslagveld. | 
Zie DataAttribute voor meer informatie.