Я работаю над проектом, который должен получить XML-файл таблицы в нашей базе данных.Поскольку я работаю над ядром asp.net на сервере, мне нужно выполнить запрос к базе данных и сериализовать в xml и вернуть ответ.В соответствии с моим кодом ниже я получил следующие ошибки:
[HttpGet, Route("GetXml")]
public ActionResult<GenericResponse> GenerateXml()
{
var cellData = _repoWrapper.Purchase.FindByCondition(a => a.IsDeleted == false);
//since servicestack we used in text also have xml serializer so it is necessary to use system.xml .serializer method
System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(cellData.GetType());
String s= x.ToString();
return _response;
}
Для этого кода я получил ошибку вроде: System.InvalidOperationException: «Чтобы быть сериализуемым в XML, типы, которые наследуются от IEnumerable, должны иметь реализацию Add (System.Object) на всех уровнях иерархии наследования.Microsoft.EntityFrameworkCore.Query.Internal.EntityQueryable '
И снова, делая это:
[HttpGet, Route("GetXml")]
public ActionResult<GenericResponse> GenerateXml()
{
var cellData = _repoWrapper.Purchase.FindByCondition(a => a.IsDeleted == false).ToList();
//since servicestack we used in text also have xml serializer so it is necessary to use system.xml .serializer method
System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(cellData.GetType());
String s= x.ToString();
return _response;
}
Я получил сообщение об ошибке: System.InvalidOperationException: «Произошла ошибка, отражающая тип« System.Collections.Generic.List 'и: InvalidOperationException: Невозможно сериализовать элемент' Total 'типа System.Nullable'1 [System.Double].XmlAttribute / XmlText нельзя использовать для кодирования сложных типов.