c# - XML 序列化和可为空的属性
问题描述
我正在研究需要在我们的数据库中获取表的 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:无法序列化System.Nullable'1 [System.Double]类型的成员'Total'。XmlAttribute/XmlText 不能用于编码复杂类型。
解决方案
推荐阅读
- java - 当倒计时为 0 时开始一个新的活动
- sql-server - C# SQL 命令查询产生“无法绑定”错误
- ssl - 从 Base64 编码的字符串创建 JKS 文件
- python - 重命名 Excel 选项卡
- excel - 在 Excel/VBA 中设置默认图表参数
- javascript - js getHours() 返回时间提前 +5 小时
- vba - 当我在 Outlook 中选择“运行脚本”规则时,如何将 ThisOutlookSession 中的代码保存为我可以选择的脚本
- python - tensorflow_hub 将 BERT 嵌入到 Windows 机器上
- python - 从命令行运行 Eclipse IDE Python 项目
- kubernetes - 自动配置的节点池未清理