안녕하세요 저는 복합 패턴을 사용하여 디렉토리 구조를 만들려고합니다. 파일과 폴더 클래스에 의해 구현 된 인터페이스 IAsset이 있습니다. 둘 다 자산입니다. 지금은 모든 폴더에있는 모든 파일을 통해 루프 싶지만 오류 메시지가 점점 오전 :C# 복합 패턴 : Program.IAsset을 열거 할 수 없습니다
Program.IAsset가 열거되지 않습니다
이 오류 메시지가 getassetSize의 내부 foreach 루프에() 방법.
공용 클래스 프로그램 { 공용 인터페이스 IAsset { 더블 GetAssetSize(); void AddAsset (IAsset a); }
public class File : IAsset
{
public double Size { get; set; }
public double GetAssetSize()
{
return Size;
}
public void AddAsset(IAsset a)
{
Console.WriteLine("No asset can be added to a file");
}
}
public class Folder : IAsset
{
public double Size { get { return _size; } set { _size = value; } }
private double _size = 0;
public List<IAsset> list = new List<IAsset>();
public double GetAssetSize()
{
foreach (var asset in list)
{
foreach (var x in asset)
{
// _size = x.GetAssetSize();
}
}
return _size;
}
public void AddAsset(IAsset a)
{
list.Add(a);
}
}
고맙습니다. – armulator