Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 25464|Atsakyti: 0

[Šaltinis] .net/C# paskirstytas TransactionScope

[Kopijuoti nuorodą]
Paskelbta 2018-05-05 10:53:17 | | | |
Cituojant kažkieno vadovą:
Atlikdami faktinį kūrimo darbą, vykdykite įvykį ir iškvieskite kitą sąsają, kad įterptumėte duomenis, jei apdorojimo logikoje yra išimtis, tada anksčiau įterpti duomenys taps nepageidaujamais duomenimis,
Mes norime, kad galėtume apibrėžti visą metodą kaip operaciją, o TransactionScope klasė suteikia paprastą metodą, leidžiantį jums nebendrauti su pačia operacija.
, kad kodo blokas būtų pažymėtas kaip dalyvaujantis operacijoje. Objektas TransactionScope sukuria operaciją ir nustato operacijos klasės ypatybę Current.

1. "TransactionScope" privalumai
1. Patogiau naudoti. "TransactionScope" gali įdiegti numanomas operacijas, kad galėtumėte rašyti duomenų prieigos lygmens kodą neatsižvelgdami į operacijas, bet valdyti operacijas verslo lygmenyje.
2. Galima įgyvendinti paskirstytus sandorius, pvz., kryžminę duomenų bazę arba MSMQ.

2. "TransactionScope" trūkumai
1. Išlaidų našumas nėra didelis. Pavyzdžiui, "Apimtyje" valdote tik bibliotekos operacijas. "TransactionScope" naudojimas yra šiek tiek švaistomas.
2. Įprastomis aplinkybėmis, kol naudojate "TransactionScope", turite sukonfigūruoti MSDTC, įdiegti ugniasienę ir atidaryti 139 prievadą. Šio prievado pakeisti negalima

3. Jei turite naudoti paskirstytas operacijas, turite apie tai pagalvoti
1. Ar ši operacija turi būti įtraukta į sandorį? Jei šis veiksmas nebaigtas arba nepavyksta, ar verta atšaukti visą operaciją? Ar nėra elegantiškų kompensavimo ar gedimų tolerancijos priemonių?
2. Kiek taškų apima paskirstytos operacijos? Turi turėti didelę operacijų realiuoju laiku eilutę? Ar negalite supaprastinti kai kurių punktų per pranešimų operacijas?
3. Ar inicijavę paskirstytą operaciją atlikote operacijas, nors šios operacijos nebuvo susijusios su sandoriais? (pvz., duomenų skaitymas, skaičiavimas, laukimas, kol vartotojas grąžins pranešimą, laukimas, kol sugrįš kitų modulių skambutis ir kt.)
4. Į operaciją neįskaičiavote kai kurių skaitymo operacijų, ar ne? Tai lengva klaida, kurią galima padaryti, kai į operaciją įtraukiate pasirinkimo operaciją.
5. Kai kuriuos operacijos veiksmus galima atlikti atlikus visas operacijas. Šio tipo operacijos turi akivaizdžias pranešimo charakteristikas. Pranešimų operacijos sako, kad aš jums pateikiu pranešimą ir garantuoju, kad pranešimas jus pasieks;
Turite priimti šį pranešimą ir užtikrinti, kad jis būtų apdorotas, tačiau jums nereikia su juo susitvarkyti, kai tik jums pranešiu. Šią operaciją akivaizdžiai galima atlikti atliekant kitą užduotį.

4. Naudodami paskirstytas operacijas atkreipkite dėmesį į šiuos dalykus
1: Įsitikinkite, kad operacijoje dalyvaujantis įrenginys įjungė paskirstytų operacijų palaikymą.
2: Jei įrenginyje įjungta ugniasienė, msdtc procesą turite nustatyti kaip išimtį.
3: Operacijoje dalyvaujantis įrenginys negali kirsti domeno (jei jis yra kryžminis domenas, "Microsoft" šiuo metu neturi tikslaus sprendimo);
4: Naudokite paskirstytas operacijas tik tada, kai turite kelias duomenų bazes, jei tai ta pati duomenų bazė, geriausia naudoti SqlTransaction.
1. Pirmiausia pridėkite System.Transactions nuorodą (turite pridėti tinklo asamblėją)

C# skambučio kodas yra toks:

Dienoraščių, paaiškinančių šią paskirstytą operacijų klasę, adresas yra labai aiškus:http://www.cnblogs.com/artech/archive/2010/01/31/1660356.html

2. Nustatykite žiniatinklio serverio ir SQL serverio aplinkos konfigūraciją

Valdymo skydelis - > Sistemos ir sauga - > valdymo įrankiai - > komponentų paslaugos
(Tai reikalinga tiek WEB ir SQL serveriams)





Valdymo skydelis - > Sistemos ir sauga - > valdymo įrankiai - > Paslaugos
(Tai reikalinga tiek WEB ir SQL serveriams)




Valdymo skydas - > Sistema ir sauga - > "Windows" užkarda
(Tai reikalinga tiek WEB ir SQL serveriams)




3. MSSQL konfigūracija

Jei norite prisijungti prie serverio, dešiniuoju pelės mygtuku spustelėkite > ypatybes




4. Konfigūruokite pagrindinius kompiuterius (konfigūruokite tik WEB serverį, jei ne, taip pat sukonfigūruokite jį SQL serveryje)

C:\Windows\System32\drivers\etc
pagrindinio kompiuterio failą, kuris atidaromas naudojant Notepad
(SQL serverio informacija turi būti sukonfigūruota WEB serverio faile Hosts)
(Jei bandymas nepavyksta, sukonfigūruokite žiniatinklio serverio informaciją SQL serverio faile Hosts)






Ankstesnis:Išorinės nuorodos į Discuz X forumo pranešimus pridėti nofollow atributą
Kitą:Funkcijos, kurios išlaiko du skaitmenis po kablelio po kablelio C# ir kaip jas naudoti
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com