Prieš porą dienų išgirdau vieną iš argumentų, kodėl nereikia naudoti LINQ su SQL, kad pastaroji technologija įrašų sukūrimui, atnaujinimui ir trynimui naudoja išskirtinai dinamiškai generuojamus SQL sakinius. Kadangi tai nėra tiesa, nusprendžiau vaizdžiai parodyti kaip tai yra daroma.

Tarkime, LINQ su SQL aš turiu tokias CRUD (Create, Read, Update, Delete) išsaugotąsias procedūras:

Pasirenkame, mano atveju, duomenų bazės lentelę Products atitinkančią esybę Product ir iš kontekstinio meniu pasirenkame punktą Configure Behavior:

Atsidariusiame lange pasirenkame veiksmą, kuriam mes norime priskirti išsaugotą procedūrą, pasirenkame pačią išsaugotą procedūrą ir, esant reikalui, sutvarkome išsaugotos procedūros parametrų ir esybės savybių sąryšius.

Nuo šiol naujų įrašų sukūrimui ir egzistuojančių atnaujinimui bei trynimui bus naudojami ne dinamiškai generuojami SQL sakiniai, bet mūsų išsaugotos procedūros. Manau, tai dar kartą parodo LINQ su SQL technologijos lankstumą.

Rodyk draugams