Помогите разобраться с Сеттером класса
Код:
public class FlagList
{
public FlagList(int Id_p,string flagName, string fDescription)
{
ID_P = Id_p;
FlagName = flagName;
FDescription = fDescription;
}
public int ID_P { get; set; }
public String FlagName { get; set; }
public String FDescription { get; set; }
}
public class CompleteList
{
private List<FlagList> fList;
public int ID { get; set; }
public String Name { get; set; }
public String Image_P { get; set; }
public String Brand { get; set; }
public String Description { get; set; }
public DateTime Created_Date { get; set; }
public List<FlagList> flagList { get; set; }
public int Count_P { get; set; }
public String Path { get; set; }
public CompleteList(int ID, String Name, String Image_P, String Brand, String Description, DateTime Created_Date, int Count_P, String Path)
{
this.ID = ID;
this.Name = Name;
this.Image_P = Image_P;
this.Brand = Brand;
this.Description = Description;
this.Created_Date = Created_Date;
this.Count_P = Count_P;
// this.flagList = flagList;
this.Path = Path;
}
public CompleteList()
{
}
public CompleteList(int iD, string name, string image_P, string brand, string description, DateTime created_Date, int count_P, List<FlagList> fList, string path)
{
ID = iD;
Name = name;
Image_P = image_P;
Brand = brand;
Description = description;
Created_Date = created_Date;
Count_P = count_P;
this.fList = fList;
Path = path;
}
}
{
public FlagList(int Id_p,string flagName, string fDescription)
{
ID_P = Id_p;
FlagName = flagName;
FDescription = fDescription;
}
public int ID_P { get; set; }
public String FlagName { get; set; }
public String FDescription { get; set; }
}
public class CompleteList
{
private List<FlagList> fList;
public int ID { get; set; }
public String Name { get; set; }
public String Image_P { get; set; }
public String Brand { get; set; }
public String Description { get; set; }
public DateTime Created_Date { get; set; }
public List<FlagList> flagList { get; set; }
public int Count_P { get; set; }
public String Path { get; set; }
public CompleteList(int ID, String Name, String Image_P, String Brand, String Description, DateTime Created_Date, int Count_P, String Path)
{
this.ID = ID;
this.Name = Name;
this.Image_P = Image_P;
this.Brand = Brand;
this.Description = Description;
this.Created_Date = Created_Date;
this.Count_P = Count_P;
// this.flagList = flagList;
this.Path = Path;
}
public CompleteList()
{
}
public CompleteList(int iD, string name, string image_P, string brand, string description, DateTime created_Date, int count_P, List<FlagList> fList, string path)
{
ID = iD;
Name = name;
Image_P = image_P;
Brand = brand;
Description = description;
Created_Date = created_Date;
Count_P = count_P;
this.fList = fList;
Path = path;
}
}
Код:
public List<CompleteList> MainSort(List<TableFin> inTable)
{
List<TableFin> outTable = new List<TableFin>();
outTable = inTable.OrderBy(u => u.ID).ToList(); //сортируем входящий массив по индексам чтобы легче было искать одинаковые элементы
List<CompleteList> comList = new List<CompleteList>(); // в этом списке будет конечный результат
List<FlagList> fList = new List<FlagList>(); // это список для флагов
CompleteList tmpComp = new CompleteList(); // временный список
//создаем элемент типа FL с 2 полями
int k = 0;
for (int i = 0; i < outTable.Count(); i++)
{
k = i;
fList.Add(new FlagList(Id_p:outTable[i].ID, flagName: outTable[i].FlagName,fDescription: outTable[i].FDescription)); //добавляем в список флагов пару Имя-Описание
if (i < (outTable.Count() - 1))
{
/////Если следующий элемент имеет другое имя то записываем текущий элемент в список
if (outTable[i].ID!=outTable[k+1].ID)
{
if(fList.Last().ID_P==outTable[i].ID)
{
comList.Add(new CompleteList(outTable[i].ID, outTable[i].Name, outTable[i].Image_P, outTable[i].Brand, outTable[i].Description, outTable[i].Created_Date, outTable[i].Count_P,fList, outTable[i].Path));
fList.Clear();
}
//
}
}
else
{
if (fList.Last().ID_P == outTable[i].ID)
{
comList.Add(new CompleteList(outTable[i].ID, outTable[i].Name, outTable[i].Image_P, outTable[i].Brand, outTable[i].Description, outTable[i].Created_Date, outTable[i].Count_P, fList, outTable[i].Path));
fList.Clear();
}
}
}
return comList;
}
{
List<TableFin> outTable = new List<TableFin>();
outTable = inTable.OrderBy(u => u.ID).ToList(); //сортируем входящий массив по индексам чтобы легче было искать одинаковые элементы
List<CompleteList> comList = new List<CompleteList>(); // в этом списке будет конечный результат
List<FlagList> fList = new List<FlagList>(); // это список для флагов
CompleteList tmpComp = new CompleteList(); // временный список
//создаем элемент типа FL с 2 полями
int k = 0;
for (int i = 0; i < outTable.Count(); i++)
{
k = i;
fList.Add(new FlagList(Id_p:outTable[i].ID, flagName: outTable[i].FlagName,fDescription: outTable[i].FDescription)); //добавляем в список флагов пару Имя-Описание
if (i < (outTable.Count() - 1))
{
/////Если следующий элемент имеет другое имя то записываем текущий элемент в список
if (outTable[i].ID!=outTable[k+1].ID)
{
if(fList.Last().ID_P==outTable[i].ID)
{
comList.Add(new CompleteList(outTable[i].ID, outTable[i].Name, outTable[i].Image_P, outTable[i].Brand, outTable[i].Description, outTable[i].Created_Date, outTable[i].Count_P,fList, outTable[i].Path));
fList.Clear();
}
//
}
}
else
{
if (fList.Last().ID_P == outTable[i].ID)
{
comList.Add(new CompleteList(outTable[i].ID, outTable[i].Name, outTable[i].Image_P, outTable[i].Brand, outTable[i].Description, outTable[i].Created_Date, outTable[i].Count_P, fList, outTable[i].Path));
fList.Clear();
}
}
}
return comList;
}
Чтобы получить доступ к классу из другово класса
Нужно сделать ссылку на класс (FlagList)
В другом классе делаем так
Код:
FlagList MyNewClass = new FlagList();
Если Вы объявили класс FlagList на уравне Новово класса, то класс
FlagList будет виден всему классу включая процедуры. Если в процедуре только на уравне
Процедуры. Видимость процедур or переменных класса FlagList должна быть Public