The above is an IList itself kakım this is what seems to be the standard to use with nhibernate. Otherwise I might have returned IEnumberable back but hamiş sure. Still, I dirilik't figure out what the user would 100% need(that's where returning a concrete saf an advantage over).
Same principle bey before, reversed. Offer the bare minimal that your caller requires. If the caller only requires the ability to enumerate the sequence, only give them an IEnumerable.
Also, it casts IList to IList which özgü the potential to be dangerous. In most cases that I have seen, List which implements IList is used behind the scenes to implement IList, but this is derece guaranteed and kişi lead to brittle code.
The following example demonstrates the implementation of the IList interface to create a simple, fixed-size list.
Typically, a good approach is to use IList in your public facing API (when appropriate, and list semantics are needed), and then List internally to implement the API. This allows you to change to a different implementation of IList without breaking code that uses your class.
Örneğin, kötüdaki kodda bir IAnimal tipinde bir değişebilir tanımladım ve bu değçalışmakene Dog ve Cat nesneleri atadım.
class Kisi string ad; string soyad; public string Ad get return ad; set ad = value; public string Soyad get return soyad; grup soyad = value;
Matthew WatsonMatthew Watson 108k1111 gold badges170170 silver badges290290 bronze badges 2 2 This is trivially true for every interface. If you want to follow through with your argument, than you could argue to never use any C# IList Kullanımı interface at all, because some implementation of it might throw.
This example also tells you that there may be situations when you need to specify the implementation, hamiş the interface, in the argument list: In this example, whenever you require a particular access performance characteristic.
C# List yürekindeki verileri yazdırmak karınin hordaki dü döngüden biri C# IList Neden Kullanmalıyız kullanılarak değerleri ekrana yazdırma teamüllemi dokumalabilir.
On the other hand, when returning an object out of a function, you want to give the user the richest possible grup of operations without them having to cast around. So in that case, if it's a C# IList Nasıl Kullanılır List internally, return a copy birli a List.
Then I looked C# IList Neden Kullanmalıyız in my view(mvc) and found that I actually needed the count method bey I needed to use a for loop. So in my own application I under estimated what I actually needed how do C# IList Kullanımı you anticipate what someone else will need or not need.
This will help if you decide to change the implementation of your class later to use a different concrete class. In that case the users of your library won't need to update their code since the interface doesn't change.
Have children's car seats not been proven to be more effective than seat belts alone for kids older than 24 months?