ServerType 형식의 일반 BindingList를 반환하는 메서드를 상속하려고합니다. 예를 들어, 다음과 같은 I가 있다고 가정 해 봅시다 : 다른 일반 반환 형식을 사용하여 메서드를 상속하는 방법
public interface IServer
{
string IpAddress { get; set; }
string Name { get; set; }
string HostName { get; set; }
string OsVersion { get; set; }
}
public class BaseServer : IServer
{
private string _IpAddress;
private string _Name;
private string _HostName;
private string _OsVersion;
public string IpAddress
{
get { return _IpAddress; }
set { _IpAddress = value; }
}
public string Name
{
get { return _Name; }
set { _Name = value; }
}
public string HostName
{
get { return _HostName; }
set { _HostName = value; }
}
public string OsVersion
{
get { return _OsVersion; }
set { _OsVersion = value; }
}
}
public class ServerTypeA : BaseServer { }
public class ServerTypeB : BaseServer { }
public class ServerTypeC : BaseServer { }
public class ServerTypeList : List<ServerTypeA>
{
public BindingList<ServerTypeA> ToBindingList()
{
BindingList<ServerTypeA> myBindingList = new BindingList<ServerTypeA>();
foreach (ServerTypeA item in this.ToList<ServerTypeA>())
{
_bl.Add(item);
}
return _bl;
}
}
이 내가 각 파생 서버 클래스에 그것을 반복하고 올바른 제네릭 형식을 사용하여 한하지 않고 "ToBindingList"방법을 할 수있는 방법입니다.
ToBindingList 방법이 단지는 바인딩에 목록 변환된다
는 다음에서 상속이 하나를 사용하십시오. 이를 수행하기 위해 목록에 대한 간단한 확장 메소드를 작성할 수 있습니다. 그것은 서버 클래스 또는 귀하의 코드에서 다른 것과 아무 상관이 없습니다. –
구현에서 ToBindingList() 구현을 반복해야하는 것처럼 보이지 않습니다. 내가 놓친 게 있니? – dasblinkenlight
BindingList가 필요한 다른 deived 클래스가 있습니다. 다른 저장소 유형. 그래서 BindingList ToBindingList()와 같은 것을 할 수 있어야합니다. –
GhostHunterJim