Catch ifadenizin bir using ifadesinde bildirilen değişkene erişmesi gerekiyorsa, içerideki tek seçenek budur.
Catch deyiminiz kullanılmadan önce kullanımda başvurulan nesneye ihtiyaç duyuyorsa, içerideki tek seçenek budur.
Catch deyiminiz, kullanıcıya bir mesaj görüntülemek gibi bilinmeyen bir süre boyunca işlem yaparsa ve kaynaklarınızı bundan önce atmak istiyorsanız, dışarıda en iyi seçeneğiniz olur.
Buna benzer bir senaryo bulduğumda, try-catch bloğu genellikle farklı bir yöntemde çağrı yığınını kullanmaktan daha yukarıdadır. Bir yöntemde, bunun içinde meydana gelen istisnaların nasıl ele alınacağını bilmek tipik değildir.
Genel tavsiyem dışarıda, dışarıda.
private void saveButton_Click(object sender, EventArgs args)
{
try
{
SaveFile(myFile); // The using statement will appear somewhere in here.
}
catch (IOException ex)
{
MessageBox.Show(ex.Message);
}
}