@evgemiil

В чем ошибка данного кода?

почему на данные методы выдает ошибку?
Ошибка 1 Наиболее подходящий перегруженный метод для "System.Runtime.Serialization.XmlObjectSerializer.WriteObject(System.Xml.XmlDictionaryWriter, object)" имеет несколько недопустимых аргументов c:\users\evgeniel\source\repos\xo\xo\xo\serializer.cs 20 17 XO
Ошибка 2 Аргумент "1": преобразование типа из "System.IO.StreamWriter" в "System.Xml.XmlDictionaryWriter" невозможно c:\users\evgeniel\source\repos\xo\xo\xo\serializer.cs 20 32 XO
Ошибка 3 Наиболее подходящий перегруженный метод для "System.Runtime.Serialization.XmlObjectSerializer.ReadObject(System.IO.Stream)" имеет несколько недопустимых аргументов c:\users\evgeniel\source\repos\xo\xo\xo\serializer.cs 29 24 XO
Ошибка 4 Аргумент "1": преобразование типа из "System.IO.StreamReader" в "System.IO.Stream" невозможно c:\users\evgeniel\source\repos\xo\xo\xo\serializer.cs 29 38 XO

вот код
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Json;
using System.Text;
using System.Threading.Tasks;

namespace XO
{
    static class Serializer
    {
        public static void SetData(string filePath, List<Statistcs> data)
        {
            var xs = new DataContractJsonSerializer(typeof(List<Statistcs>));

            using (var sw = new StreamWriter(filePath))
            {
                xs.WriteObject(sw, data);
            }
        }
        public static List<Statistcs> GetData(string filePath)
        {
            var xs = new DataContractJsonSerializer(typeof(List<Statistcs>));
 
            using (var sr = new StreamReader(filePath))
            {
                return xs.ReadObject(sr) as List<Statistcs>;
            }
        }
    }
}


bd94071d5d394f67b7f8af08c92bf810.jpg9450f41cdfa64dc6accc0f6837c848b8.jpg
  • Вопрос задан
  • 315 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Got_Oxidus
Учусь
1 и 3 ошибка.

/////////////////////////////

img1725.png
Преобразовывать объекты можно только по стрелочкам.

У StreamWriter/Reader есть конструктор, принимающей Stream, пользуйтесь им.

#ГуглВПомощь
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы