1

我是 .net 网络服务的新手,遇到了一些问题。我有一些 wsdl 文件,其中包含使用 wsdl.exe 的 webservice 和generete 代理类的规范。然后通过使用这个类发送一些数据,这是一个问题。代理类有一些不可为空的类型,例如DateTime。所以我不能做这样的事情:

someDateField = null;

所以我只是设置

someDateFieldSpecified = false;

这不像我想的那样工作。我不想通过一些神奇的机制通过网络发送这些字段,并将其添加到我的程序生成的 xml 中。

...
<someDateField>1/1/0001 12:00:00 AM</someDateField>
...

有什么办法不发送这个字段吗?我阅读了一些有关创建自定义序列化程序的内容,但就我的知识水平而言,这对我来说是一项相当艰巨的任务。

4

2 回答 2

0

DateTime不是可以为空的类型,因此它不能null作为值接受。但是,DateTime?或者Nullable<DateTime>可以接受空值,应该可以解决您的问题。

将属性设置someDateFieldSpecifiedfalse将简单地从您的请求中省略该someDateField字段,但由服务器决定如何处理。

于 2013-10-28T09:27:52.897 回答
0

将 someDateFieldSpecified 属性设置为 false 将简单地从您的请求中省略 someDateField 字段,但由服务器决定如何处理它。

于 2013-10-28T11:20:56.307 回答