|
A ConcurrencyCheck funkció alkalmazható egy domain osztály tulajdonságaira. Amikor az EF frissítési műveletet végez, a Code-First az oszlop értékét a where feltétel állításba helyezi, és ezt a CurrencyCheck funkciót használhatod a meglévő oszlopok ellenőrzésére, ahelyett, hogy külön TimeStamp oszlopot használnál az egyidejű ellenőrzéshez. Nézd meg az alábbi kódot: Ezután módosítsuk a fő funkció tesztkódját:
Ekkor a hiba egyidejű üzenete a következő:
exec sp_executesql N'UPDATE [dbo]. [DiákInfo] SET [StudentName] = @0, [StdId] = @1 AHOL ((([StudentKey1] = @2) ÉS ([StudentKey2] = @3)) ÉS ([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' Kérjük, vegye figyelembe:
Fontos megjegyezni, hogy a TimeStamp attribútumot csak egyetlen bájtos tömbtulajdonságra lehet alkalmazni egy osztályban, míg a ConcurrencyCheck attribútumot bármely adattípussal rendelkező tulajdonságra alkalmazható.
A TimeStamp funkció csak olyan osztályokban használható, ahol egybájtos tulajdonság van, de a ConcurrencyCheck funkció bármilyen számban és tulajdonságtípusban használható.
|