【发布时间】:2015-03-18 09:19:01
【问题描述】:
我在我的应用程序中使用 WCF Web 服务,同时我正在发送一个请求,我使用 fiddler 监视请求和响应。问题在于空标签,wcf 客户端生成 nil=true 属性。无论如何我可以将它们更改为空白标签吗?
这是一个例子
<a:Seats i:nil="true" />
这是Seat类的列表,它是可选标签,所以不需要传递它。但是当我发送上述请求时,我会收到来自网络服务的Object reference not set to an instance of an object 响应。我被要求从请求中删除 nill 属性。所以一定要变成这个样子
<a:Seats/>
添加EmitDefaultValue=false 将完全删除标签,因此它不是答案。我怎样才能做到这一点 ?
【问题讨论】:
-
“空白标签”是什么意思?
-
为什么你需要这个?
i:nil=true只是简单地声明这个属性没有价值......为什么这是一个“问题”?? -
@Jocke 空白像
, -
@marc_s 我不知道为什么 i:nill=true 会造成问题。即使在服务器端没有指定它,它也应该被忽略,但因为他们建议我删除它,我需要这样做。
-
@Behzad 他们是谁?为什么他们相信删除
i:nil="true"会解决问题?!无论如何,为什么不用零元素初始化集合而不是发送空集合(这是最佳实践,请参阅:stackoverflow.com/questions/1969993/…)