Задать вопрос
Android97
@Android97
Бэкенд и немного фронтенд разработчик

Как сериализовать интерфейс в C#?

У меня есть интерфейс ITransport.
Есть классы HelicopterTransport и TruckTransport.
Есть список List, в который можно добавить HelicopterTransport или TruckTransport.
Пробую так. но вылетает ошибка, нельзя сделать сериализацию интерфейса.
transportList = JsonConvert.DeserializeObject<List<ITransport>>(jsonString);

Как сделать сериализацию этого списка в файл ?
  • Вопрос задан
  • 702 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • OTUS
    C# Developer. Professional
    6 месяцев
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 1
    1 неделя
    Далее
  • Software-testing.ru
    Программирование на C# для тестировщиков
    10 недель
    Далее
Решения вопроса 1
Android97
@Android97 Автор вопроса
Бэкенд и немного фронтенд разработчик
Сделал так:
transportList = new List<ITransport>();
            BinaryFormatter formatter = new BinaryFormatter();
            FileStream transportFile = new FileStream("transport.tdt", FileMode.OpenOrCreate);
            if (transportFile.Length>0)
            {
                transportList = (List<ITransport>)formatter.Deserialize(transportFile);   
            }
            transportFile.Close(); 
            transportListBindingSource.DataSource = transportList;


BinaryFormatter formatter = new BinaryFormatter();
            FileStream transporFileStream = new FileStream("transport.tdt", FileMode.OpenOrCreate);
            formatter.Serialize(transporFileStream, transportList);
            transporFileStream.Close();
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы