SORU
10 HAZİRAN 2010, PERŞEMBE


İsAssignableFrom ve " kullanın;&; C " kelime#

Unity öğrenmeye çalışırken MVC GetControllerInstance geçersiz kılmak için aşağıdaki kodu görüyorum:

if(!typeof(IController).IsAssignableFrom(controllerType)) { ... }

bu benim için aslında yazı oldukça dolambaçlı bir yol gibi görünüyor

if(controllerType is IController) { ... }

is IsAssignableFrom dökme dönüşümlerini kapsamıyor yani IsAssignableFrom, arasında ince farklar var takdir ediyorum, ama pratik senaryolarda bu fark, ima anlamakta güçlük çekiyorum.

is IsAssignableFrom seçmek için imporantant? Ne fark GetControllerExample eder mi?

if (!typeof(IController).IsAssignableFrom(controllerType))
      throw new ArgumentException(...);
return _container.Resolve(controllerType) as IController;

CEVAP
10 HAZİRAN 2010, PERŞEMBE


Aynı şey değil.

if(controllerType is IController)

her zamancontrollerType Type IController ** 17, Her zaman ve bir bir yana false değerlendirir.

is operatör olup olmadığını kontrol etmek için kullanılırörnekbelirli bir türü için uyumludur.

İsAssignableFrom yöntem olup olmadığını bir kontrol etmek için kullanılırYazınbelirli bir türü ile uyumlu.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Caina Mondo Zine

    Caina Mondo

    13 EKİM 2007
  • Grace Su

    Grace Su

    6 Ocak 2006
  • Tube Time

    Tube Time

    14 Mayıs 2013