我有一个WCF服务引用由Visual Studio 2008(.NET 3.5 SP1)中产生(=客户端代理)。所生成的代码包含的DateTimeOffset特性,从而自然VS装饰它与KnowTypeAttribute(System.DateTimeOffset)数据契约。

每当调用WCF操作返回上述数据合同时,得到以下情况例外:

  

类型“System.DateTimeOffset”不能是   添加到自已知类型的列表   另一种类型   'System.Runtime.Serialization.DateTimeOffsetAdapter'   使用相同的数据协定名称   “ http://schemas.datacontract.org/2004/07/System:DateTimeOffset”   已经存在

据我所知,DateTimeOffsetAdapter是在System.Runtime.Serialization一个结构串行化的DateTimeOffset对象时使用。那么,为什么它会导致此异常,以及如何这个问题能解决或避免?

有帮助吗?

解决方案

在我的情况下,问题似乎由具有安装了.NET 4干的现有以添加IIS作为特征到Windows 7。

一个和我的同事通过打开升高的(运行管理员)命令提示固定的问题。然后跑以下内容:

cd C:\Windows\Microsoft.NET\Framework64\v4.0.30319
aspnet_regiis.exe -i

希望这可以帮助别人!

其他提示

我不知道为什么。但要解决这个问题试图将项目移植到.NET Framework 4版

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top