public static void MyFunction(MyErrorClass err)
{
var query = from filter in DataContext.ErrorFilters select filter;
query = query.Where(f => err.ErrorMessage.Contains(f.ErrorMessage));
List<ErrorFilter> filters = query.ToList();
//...more code
}
Yukarıdaki kodla ilgili bazı sorunlar yaşıyorum ve konu satırındaki hatayı alıyorum. query.ToList()
ile satır. İşte yapmaya çalışıyorum:"Sadece istemci üzerinde değerlendirilebilecek bağımsız değişkenler String.Contains yöntemi için desteklenir"
İlk kapalı, özel bir hata sınıfım var, MyErrorClass
. Sitemde bir hata oluştuğunda, istisnadan bir MyErrorClass
nesnesi yaratıyorum, tüm verileri bu nesnedeki istisnadan saklayın ve bilgileri veritabanına kaydedin.
İzlediğim özel durum özelliklerinden biri, hata iletisidir (ErrorMessage
). Kullanıcının ErrorMessage
tabanlı hataları filtreleyebileceği veritabanında ayarlanmış bir ErrorFilters
tablosum var. "System.Data.SqlClient.SqlException: Zaman aşımı süresi doldu. İşlemin tamamlanmasından önce sunucu zaman aşımı süresi doldu veya sunucu yanıt vermiyor." Diyorsunuz ve bunları yok saymak istiyorsunuz. Sadece "zaman aşımı süresi doldu" olarak ErrorMessage ile veritabanına bir filtre ekleyin ve yoksayılacak şekilde ayarlayın.
Şimdi, yukarıdaki sınıfım hata almaya ve hatanın filtrelenip filtrelenmeyeceğine karar vermeye ayarlı. Hata ile eşleşen ErrorMessage
olan tüm filtrelerin bir listesini almaya çalışıyorum.
Bunun kolay bir düzeltme olduğundan eminim, nasıl düzeltileceğini bilmiyorum.
Bu yöntem geçersiz mi, ne yapılması gerekiyor? Eğer hatanın gösterilip gösterilmeyeceğini kontrol etmesi gerekiyorsa, o zaman bir boole döndürmeli ve bir düzeltme bulunmalıdır. Else, soruyu biraz daha iyi açıkla. –
İşlev, hatayla ilgili olmayan pek çok şey yapıyor, tüm bunlar, hatayla eşleşen bir süzgeç listesi almayı denediğim 3 satır. Bilmen gereken her şeyi açıkladım, başka ne merak ediyorsun? –