Bu iyi bir yaklaşım kullanarak içinde geri aramak için {} deyimi?
Sadece using
bir blok içinde return
aramak için güvenli bir iyi bir yaklaşım olduğunu bilmek istiyorum.
Eski için.
using(var scope = new TransactionScope())
{
// my core logic
return true; // if condition met else
return false;
scope.Complete();
}
En son kıvırcık kaşlı dispose()
iptal olacak biliyoruz. Ama return
beri yukarıdaki durumda ne olacağı verilen kapsam (AFAIK) denetim kaçmış...
- Benim 7 ** denir?
- Ve kapsamı
dispose()
yöntemi.
CEVAP
Kullanarak bir blok try/finally
sadece bir blok olduğundan son derece güvenli using
blok içinde return
Ara.
Örnek döndükten sonra yukarıda true
kapsam bertaraf edecek ve kendi değer döndürdü. return false
scope.Complete()
değilaradı. Dispose
ancak sonunda blok içinde bulunduğundan bağımsız olarak verilir.
Kodunuzu aslında bu daha kolay anlamak için yapar () aynıdır:
var scope = new TransactionScope())
try
{
// my core logic
return true; // if condition met else
return false;
scope.Complete();
}
finally
{
if( scope != null)
((IDisposable)scope).Dispose();
}
İşlem olacağını lütfen unutmayınaslascope.Complete()
hareketi tamamlamak için almak için bir yol yok gibi işlemek.
Hata: &; INSERT EXEC deyimi iç içe olm...
Nasıl düğmeye tıklama Parçaları içinde...
Nasıl kaydırma hareketi geri devre dış...
'göç geçmişi kullanarak sıfırlama...
N almak için GRUP içinde SINIRI kullan...