|
ConcurrencyCheck funktsiooni saab rakendada domeeniklassi omadustele. Kui EF teeb uuendusoperatsiooni, paneb Code-First veeru väärtuse where-tingimuslausesse ning seda CurrencyCheck funktsiooni saab kasutada olemasolevate veergude kasutamiseks samaaegsuse kontrollimiseks, selle asemel et kasutada eraldi TimeStamp veergu samaaegsuse kontrollimiseks. Vaata allolevat koodi: Järgmisena muudame põhifunktsiooni testkoodi:
Siis on vea samaaegsuse teade:
tegevjuht sp_executesql N'UPDATE [dbo]. [StudentInfo] SET [StudentName] = @0, [StdId] = @1 KUS ((([StudentKey1] = @2) JA ([StudentKey2] = @3)) JA ([StudentName] = @4)) ',N'@0 nvarchar(20),@1 int,@2 int,@3 int,@4 nvarchar(20)',@0=N'Test Only For One',@1=1,@2=1,@3=1,@4=N'Test Only For One' Palun pange tähele:
Pane tähele, et TimeStampi atribuuti saab rakendada ainult ühebaidisele massiivi omadusele klassis, samas kui ConcurrencyCheck atribuuti saab rakendada suvalise arvu omaduste ja mis tahes andmetüübiga.
TimeStampi funktsiooni saab kasutada ainult klassides, millel on ühebaidiline omadus, kuid ConcurrencyCheck funktsiooni saab kasutada mistahes arvu ja tüüpi omaduste puhul.
|