Помогите с meathod поиск в c#.net
Я пробовал со всеми методами find, findAll, contains, exits, но seachbyFirstName, searchbyLastName вообще не работает!! plz может кто-нибудь помочь??
Конструктор для SearchbyFirstName и другие находятся в классе addressbook!!
Что я уже пробовал:
Класс адресной книги
использование системы;
использование системы.Коллекции.Общий;
использование System. Linq;
используя системы.Текст;
использование системы.Нарезание резьбы.Задачи;
пространство имен ConsoleApplication14
{
публичный класс Class1
{
частный список<class2 & gt; персон;
публичный класс 1()
{
персоны = новый список & lt;class2>();
}
public virtual bool add (Class2 person)
{
по каждому элементу (Класс2 п В лиц)
{
if (string.Сравнение(стр. Идентификатор, " идентификатор ", значение stringcomparison.OrdinalIgnoreCase) == 0)
{
возвращать false;
}
}
лиц.Добавить (персона);
вернуть true;
}
public virtual bool delete (Class2 person)
{
для (int i = 0; i < persons.Граф; i++)
{
Класс 2 p = лица[i];
если (p. равно (person))
{
лиц.RemoveAt(i);
вернуть true;
}
}
возвращать false;
}
публичный виртуальный список & lt;class2> searchByFirstName(строка fName)
{
List< class2> res = новый список & lt;class2>();
для (int i = 0; i < persons.Граф; i++)
{
Класс 2 p = лица[i];
if (p. [i]. StringComparison.OrdinalIgnoreCase (fName)==0 )
{
РЭС.Добавить(п);
}
}
вернуться РЭС;
}
публичный виртуальный список & lt;class2> searchByLastName(строка lName)
{
List< class2> res = новый список & lt;class2>();
для (int i = 0; i < persons.Граф; i++)
{
Класс 2 p = лица[i];
if (string.Сравните(p. LastName," LastName", StringComparison.OrdinalIgnoreCase) == 0)
{
РЭС.Добавить(п);
}
}
вернуться РЭС;
}
public virtual Class2 searchById(string id)
{
для (int i = 0; i < persons.Граф; i++)
{
Класс 2 p = лица[i];
if (String.Сравнение(стр. Идентификатор, "идентификатор", значение stringcomparison.OrdinalIgnoreCase) == 0)
{
возвращение п;
}
}
возвращать null;
}
общедоступный виртуальный недействительными печати()
{
Приставка.WriteLine ("Печать Адресной Книги");
по каждому элементу (Класс2 п В лиц)
{
Приставка.WriteLine(p);
}
}
}
}
PersonClass
использование системы;
использование System. Linq;
используя системы.Текст;
использование системы.Нарезание резьбы.Задачи;
пространство имен ConsoleApplication14
{
публичный класс Class2
{
частная строку "имя";
частная строку "фамилия";
идентификатор частной строки;
public Class2 (string firstName, string lastName, string id): base()
{
это.имя = "имя";
this. lastName = фамилия;
это.идентификатор = идентификатор;
}
общедоступный виртуальный строку "имя"
{
получить
{
вернуть имя;
}
набор
{
это.имя = "имя";
}
}
общедоступный виртуальный строку "фамилия"
{
получить
{
вернуть фамилию;
}
набор
{
this. lastName = фамилия;
}
}
публичный идентификатор виртуальной строки
{
получить
{
идентификатор возврата;
}
набор
{
это.идентификатор = идентификатор;
}
}
public override string ToString()
{
возвращение "человека[имя=" + имя + ", "фамилия" =" + "фамилия"+ ", код=" + Код + "]";
}
}
}
addressBookTester
использование системы;
использование System. Linq;
используя системы.Текст;
использование системы.Нарезание резьбы.Задачи;
пространство имен ConsoleApplication14
{
программа занятий
{
static void Main (string[] args)
{
Приставка.WriteLine ("Создание Класса Адресной Книги");
Class1 addressBook = новый Class1();
Class2 p1 = новый Class2("fName1", "lName3", " x0001");
Class2 p2 = новый Class2("fName2", "lName4", " x0002");
Class2 p3 = новый Class2("fName3", "lName9", " x0003");
Class2 p4 = новый Class2("fName4", "lName8", " x0004");
Class2 p5 = новый Class2("fName5", "lName6", " x0005");
Class2 p6 = новый Class2("fName6", "lName4", " x0006");
Class2 p7 = новый Class2("fName7", "lName1", " x0007");
Class2 p8 = новый Class2("fName8", "lName4", " x0008");
Class2 p9 = новый Class2("fName9", "lName7", " x0009");
Class2 p10 = новый Class2("fName10", "lName6", " x00010");
Class2 p11 = новый Class2("fName1", "lName2", " x00011");
Class2 p12 = новый Class2("fName2", "lName3", " x0001");
Приставка.Метода WriteLine("ожидается : истинный \Т" + Р1 + " дополнение :" + адресная книга.добавить(Р1));
Приставка.Метода WriteLine("ожидается : истинный \Т" + Р2 + " дополнение :" + адресная книга.добавить(П2));
Приставка.Метода WriteLine("ожидается : истинный \Т" + Р3 + " дополнение :" + адресная книга.добавить(Р3));
Приставка.Метода WriteLine("ожидается : истинный \Т" + Р4 + " дополнение :" + адресная книга.добавить(Р4));
Приставка.Метода WriteLine("ожидается : истинный \Т" + Р5 + " дополнение :" + адресная книга.добавить(П5));
Приставка.Метода WriteLine("ожидается : истинный \Т" + Р6 + " дополнение :" + адресная книга.добавить(П6));
Приставка.Метода WriteLine("ожидается : истинный \Т" + Р7 + " дополнение :" + адресная книга.добавить(Р7));
Приставка.Метода WriteLine("ожидается : истинный \Т" + П8 + " дополнение :" + адресная книга.добавить(П8));
Приставка.Метода WriteLine("ожидается : истинный \Т" + П9 + " дополнение :" + адресная книга.добавить(Р9));
Приставка.Метода WriteLine("ожидается : истинный \Т" + Р10 + " дополнение :" + адресная книга.добавить(Р10));
Приставка.Метода WriteLine("ожидается : накладные \Т" + Р11 + " дополнение :" + адресная книга.добавить(Р11));
Приставка.Метода WriteLine("ожидается : накладные \Т" + Р12 + " дополнение :" + адресная книга.добавить(Р12));
Приставка.WriteLine ("перед удалением человека");
адресная книга. печать();
Приставка.WriteLine ("удаление человека с идентификатором x0007");
адресная книга.удалить(p7);
Приставка.WriteLine ("после удаления человека");
адресная книга. печать();
Приставка.WriteLine ("поиск лиц с идентификатором x0001");
Приставка.WriteLine ("Result :" + addressBook. searchById ("x0001"));
Приставка.WriteLine ("поиск лиц с именем fName1");
Приставка.WriteLine ("Result :" + addressBook.searchByFirstName("fname1"));
Приставка.WriteLine ("поиск лиц с фамилией lName4");
Приставка.WriteLine ("Result :" + addressBook.searchByLastName ("lname4"));
}
}
}