SORU
17 NİSAN 2010, CUMARTESİ


't ıenumerable yok Saymak bir yöntem var

Aşağıdaki yöntemi var:

public bool IsValid
{
  get { return (GetRuleViolations().Count() == 0); }
}

public IEnumerable<RuleViolation> GetRuleViolations(){
  //code here
}

Neden .Count() yukarıda yaptığım zaman altı çizili olduğunu kırmızı mı?

Aşağıdaki hatayı aldım:

Hata 1 'Sistemi.Koleksiyonları.Jenerik.Ienumerable' için bir tanım içermiyor 'Kont' ve hiç uzatma yöntemi 'Kont' kabul eden ilk bağımsız değişkeni yazın 'Sistem.Koleksiyonları.Jenerik.Ienumerable' bulunamadı (bir eksik olabilir mi yönergesini kullanarak veya bir derleme referans?) c:\users\a\documents\visual studio 2010\Projects\Yemek NerdDinner\NerdDinner\Modelleri\.cs 15 47 NerdDinner

CEVAP
17 NİSAN 2010, CUMARTESİ


Ekleyin:

using System.Linq;

kaynak ve Sistem için bir referans var emin olun.Çekirdek derleme.

Count() uzatma yöntemi Nesneleri bu SERİ, ve SQL ve işlem dışı diğer sağlayıcılar bu SERİ için System.Linq.Queryable System.Linq.Enumerable statik sınıfı tarafından sağlanır.

Aslında, burada Count() kullanarak nispeten verimsiz (en azından Nesneleri bu SERİ. EDİT: Öğrenmek istediğin şey olup olmadığıdırherhangi birelemanları ya da değil, değil mi? Bu durumda, Any() daha iyi bir uyum:

public bool IsValid
{
  get { return !GetRuleViolations().Any(); }
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Canal TekZoom

    Canal TekZoo

    1 NİSAN 2012
  • Krumme1996

    Krumme1996

    21 EYLÜL 2009
  • Video-Tutorials.Net

    Video-Tutori

    15 Mart 2011