.NET 4.x Десериализация BindingList<> - C#

Узнай цену своей работы

Формулировка задачи:

Всем привет, не могу понять почему при не забрасывает данные в DataGridView при использовании десериализации BindingList<> С текстовым файлом всё работает отлично..и бинарным List<> тоже отлично, а вот с BindingList<> как-то не очень
Листинг программы
  1. namespace Lab2BD
  2. {
  3. [Serializable]
  4. class DataBase
  5. {
  6. public static BindingList<DataBase> MyBase = new BindingList<DataBase>();
  7. public string FIO { get; set; }
  8. public string Birthday { get; set; }
  9. public string Group { get; set; }
  10. public string Number { get; set; }
  11. public string Adress { get; set; }
  12. public DataBase(string FIO, string Birthday, string Group, string Number, string Adress)
  13. {
  14. this.FIO = FIO;
  15. this.Birthday = Birthday;
  16. this.Group = Group;
  17. this.Number = Number;
  18. this.Adress = Adress;
  19. }
  20. public DataBase()
  21. {
  22. }
  23. public void Add(DataBase Item)
  24. {
  25. MyBase.Add(Item);
  26. }
  27. public void SaveToBinary()
  28. {
  29. BinaryFormatter binFormat = new BinaryFormatter();
  30. using (Stream fStream = new FileStream("user.dat", FileMode.Create, FileAccess.Write, FileShare.None))
  31. {
  32. binFormat.Serialize(fStream, MyBase);
  33. }
  34. }
  35. public void ReadFromBinary()
  36. {
  37. MyBase.Clear();
  38. BinaryFormatter binFormat = new BinaryFormatter();
  39. using (Stream fStream = new FileStream("user.dat", FileMode.Open, FileAccess.Read, FileShare.None))
  40. {
  41. MyBase = (BindingList<DataBase>)binFormat.Deserialize(fStream);
  42. }
  43. }
  44. public void SaveToTxt()
  45. {
  46. using (StreamWriter SW = new StreamWriter("user.txt"))
  47. {
  48. foreach (DataBase Item in MyBase)
  49. {
  50. SW.WriteLine(Item.FIO + "|" + Item.Birthday + "|" + Item.Group + "|" + Item.Number + "|" + Item.Adress);
  51. }
  52. }
  53. }
  54. public void ReadFromTxt()
  55. {
  56. MyBase.Clear();
  57. string ReadData = "";
  58. using (StreamReader SR = new StreamReader("user.txt"))
  59. {
  60. while (!SR.EndOfStream)
  61. {
  62. DataBase Item = new DataBase();
  63. ReadData = SR.ReadLine();
  64. string[] SplitData = ReadData.Split('|');
  65. Item.FIO = SplitData[0];
  66. Item.Birthday = SplitData[1];
  67. Item.Group = SplitData[2];
  68. Item.Number = SplitData[3];
  69. Item.Adress = SplitData[4];
  70. Add(Item);
  71. }
  72. }
  73. }
  74. }
  75. }
Вот сам проект. Lab2BD.rar У кого будет время..скажите в чём дело..а то уже вторые сутки не могу найти ошибку.

Решение задачи: «.NET 4.x Десериализация BindingList<>»

textual
Листинг программы
  1.         private void OpenButton_Click(object sender, EventArgs e)
  2.         {
  3.             if (LoadSaveTextRB.Checked)
  4.             {
  5.                NewItem.ReadFromTxt();
  6.             }
  7.             else
  8.             {        
  9.                NewItem.ReadFromBinary();
  10.                MainDataGridView.DataSource = DataBase.MyBase;      //<<----------            
  11.             }  
  12.         }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.5 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут