Çalışma zamanı, genel bir araca özgü olmayan genel bir arabirimin üyelerine başvurularda izin verilebilseydi, bunun yararlı olabileceğini düşünüyor mu? Her zamanki "geçici çözüm", genel arabirim için temel olarak genel olmayan bir arabirim oluşturmak olduğunu biliyorum, ancak temel olarak otomatik olan bu temel arabirime karşı geçerli bir neden var mı?jenerik arabirimler için soyut başvurular
public interface IProcessor<T>
{
string Name { get; }
void Process(T item);
}
Ben otomatik böyle bir şey izin verecek uygun olacağını düşünüyorum: Ben buna karşı argümanları duymak merak ediyorum
public void LogProcessor(IProcessor<> item)
{
Trace.WriteLine(item.Name);
}
(diğer aşağıdaki arayüz Verilen örnek için
, "tembel olmayı bırak ve sadece temel arayüzü yaz" dan daha iyi.
public void LogProcessor<T>(IProcessor<T> item)
{
Trace.WriteLine(item.Name);
}
Orada ne demek istediğini nereden biliyorsunuz? –
Böyle bir özelliği işlemek için C# dinamik olarak yazılmalıdır. –
Paul Sasik. Derleme sonrasında bu kod, jenerikler için temel arayüz oluşturabilir. Ve bu bir fikir, ancak bazı sorunlara neden olabilir ... – Evgeny