arayüzünün özelliklerine 'set' ekleyin. Arabirimdeki özelliklere erişim sağlayan setler sağlayarak bir arabirimi 'genişletmeyi' istiyorum. arayüz şöyle görünür: C#
interface IMutableUser : IUser
{
string UserName
{
get;
set;
}
}
Ben kalıtım gerekir:
interface IUser
{
string UserName
{
get;
}
}
Böyle bir şey istiyorum. IUser
gövdesini IMutableUser
'a kopyalayamıyorum ve set erişimcileri ekleyemiyorum.
Bu mümkün C#? Eğer öyleyse, nasıl başarılabilir?
interface IUser
{
string UserName
{
get;
}
}
abstract class MutableUser : IUser
{
public virtual string UserName
{
get;
set;
}
}
başka olasılık bu sahip olmaktır:
Yeni eklenen harika çalıştı! Teşekkürler! Cevabınızı bir örnekle (başkaları için) güncelleyebilir misiniz? – strager
Pratik açıdan: Arayüzler zaman içinde çok kötü gelişir. Arabirimin tüm uygulayıcıları bu sözleşmedeki her değişiklikten kurtulacaklar .... –
@PatrickPeters - Yorumun SetUserName yöntemine yönlendirildiğini varsayalım? İlk seçenekle ilgili sorunları görmüyorum. Uygulamanın uygun olduğu yerlerde açık uygulamayı takip etmesi halinde olası molaların bir kısmı ortadan kaldırılır. – Maslow