Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#XmlSerializer:从XML文件反序列化空GUID值_C#_Xml_Xmlserializer - Fatal编程技术网

C#XmlSerializer:从XML文件反序列化空GUID值

C#XmlSerializer:从XML文件反序列化空GUID值,c#,xml,xmlserializer,C#,Xml,Xmlserializer,我有一个包含如下XML的配置文件: <XmlParameter Title="Analysis"> <ProcedureName>XmlParameterAnalysisGetFirst</ProcedureName> <ProcedureGroupId/> <Returns>Table</Returns> <Params> <Param OrderKey="

我有一个包含如下XML的配置文件:

<XmlParameter Title="Analysis">
    <ProcedureName>XmlParameterAnalysisGetFirst</ProcedureName>
    <ProcedureGroupId/>
    <Returns>Table</Returns>
    <Params>
        <Param OrderKey="0" Name="xmlParameters">%xmlParameters%</Param>
    </Params>
</XmlParameter>
但当我尝试使用此代码块反序列化文件时:

var deserializer = new XmlSerializer(typeof(XmlParameter);
var reader = new StreamReader(this.FilePath);
var obj  = deserializer.Deserialize(reader);
我得到一个
系统。InvalidOperationException

XML文档中出现错误。-->Sytem.Format.Exception:未知的Guid格式


我的问题是是否有一种方法可以反序列化XML文件中的
null
GUID值null意味着如果XML文件中不存在引用,POCO字段将获得null引用

您的xml格式错误:请删除以下内容:


为了简化您的问题,请不要使用可为空的Guid,而是使用Guid.Empty。这等于0000-000。。。这不是一个有效的Guid,因此可以进行检查。
var deserializer = new XmlSerializer(typeof(XmlParameter);
var reader = new StreamReader(this.FilePath);
var obj  = deserializer.Deserialize(reader);