C# 使用Fiddler';s向ASP.NET服务器发送请求,其中包含DataContract中未定义的其他节点,并希望它引发异常

C# 使用Fiddler';s向ASP.NET服务器发送请求,其中包含DataContract中未定义的其他节点,并希望它引发异常,c#,asp.net,web-services,fiddler,datacontractserializer,C#,Asp.net,Web Services,Fiddler,Datacontractserializer,当xml中存在DataContract中未定义的附加节点时,Fiddler将显示来自服务器的任何异常 我正在做一个穿小提琴的人。我正在传递xml中的另一个节点,即在c#object中未定义DataMember,但执行此操作后,我没有得到任何异常 下面是它的请求头和请求体,在下面的示例中,任务从未定义,而是在xml中提供 User-Agent: Fiddler Content-length: 1306 Content-Type: application/xml Authorization: adm

当xml中存在DataContract中未定义的附加节点时,Fiddler将显示来自服务器的任何异常

我正在做一个穿小提琴的人。我正在传递xml中的另一个节点,即在c#object中未定义DataMember,但执行此操作后,我没有得到任何异常

下面是它的请求头和请求体,在下面的示例中,任务从未定义,而是在xml中提供

User-Agent: Fiddler
Content-length: 1306
Content-Type: application/xml
Authorization: admin:admin
Host: ***
请求正文

<Task xmlns="http://****" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
    <FirstName>abc</FirstName>
    <xyz>test</xyz>
</Task>


在上面的场景中,为什么服务器不抛出任何异常?

您希望返回错误代码的是您的web服务器,而不是fiddler。我做WCF已经有几年了,但如果我没记错的话,请求中额外的
xyz
字段将被
DataContractSerializer
忽略,您希望返回错误代码的是您的web服务器,而不是fiddler。我做WCF已经有几年了,但如果我没记错的话,请求中额外的
xyz
字段将被
DataContractSerializer
忽略,您希望返回错误代码的是您的web服务器,而不是fiddler。我做WCF已经有几年了,但如果我没记错的话,请求中额外的
xyz
字段将被
DataContractSerializer
忽略,您希望返回错误代码的是您的web服务器,而不是fiddler。我做WCF已经有几年了,但是如果我没记错的话,请求中额外的
xyz
字段将被
DataContractSerializer

忽略,为什么您希望它返回HTTP 400?该错误代码用于格式错误的HTTP请求,并且您的请求完全有效。即使XML有效负载是有效的,它也只是与您的web服务不匹配。我想我的问题框架是错误的,正如你们都提到的,我希望服务器在读取输入并找到额外字段时抛出一些异常@我将研究DataContractSerializer。本文讨论DataContractSerializer忽略其他文件。谢谢@CodingWithSpike@EricLaw-将我的评论移到了一个答案。你为什么希望它返回HTTP 400?该错误代码用于格式错误的HTTP请求,并且您的请求完全有效。即使XML有效负载是有效的,它也只是与您的web服务不匹配。我想我的问题框架是错误的,正如你们都提到的,我希望服务器在读取输入并找到额外字段时抛出一些异常@我将研究DataContractSerializer。本文讨论DataContractSerializer忽略其他文件。谢谢@CodingWithSpike@EricLaw-将我的评论移到了一个答案。你为什么希望它返回HTTP 400?该错误代码用于格式错误的HTTP请求,并且您的请求完全有效。即使XML有效负载是有效的,它也只是与您的web服务不匹配。我想我的问题框架是错误的,正如你们都提到的,我希望服务器在读取输入并找到额外字段时抛出一些异常@我将研究DataContractSerializer。本文讨论DataContractSerializer忽略其他文件。谢谢@CodingWithSpike@EricLaw-将我的评论移到了一个答案。你为什么希望它返回HTTP 400?该错误代码用于格式错误的HTTP请求,并且您的请求完全有效。即使XML有效负载是有效的,它也只是与您的web服务不匹配。我想我的问题框架是错误的,正如你们都提到的,我希望服务器在读取输入并找到额外字段时抛出一些异常@我将研究DataContractSerializer。本文讨论DataContractSerializer忽略其他文件。感谢@CodingWithSpike@EricLaw-将我的评论移至答案。
[DataContract(Namespace = "http://***")]
public class Task
{
        [DataMember]
        public string FirstName{ get; set; }
}