FIX: "InvalidDataContractException" error message when you try to use the NetDataContractSerializer class to serialize generic collection types in the .NET Framework 4

Article translations Article translations
Article ID: 2624480 - View products that this article applies to.
Expand all | Collapse all

On This Page

SUMMARY

Consider the following scenario:
  • In a Microsoft .NET Framework 4-based application, there is a generic collection type that is used for a get-only property.

    Note The collection type has no default constructor.

  • The collection type is marked with the SerializableAttribute attribute.
  • You use the NetDataContractSerializer class to serialize the collection type.

In this scenario, the collection type cannot be serialized. Additionally, you may receive an error message that resembles the following:
[InvalidDataContractException: Type 'collection_type' is an invalid collection type since it does not have a default constructor.]

CAUSE

This problem occurs because of an error in the NetDataContractSerializer class.

RESOLUTION

Hotfix information

A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that described in this article. Apply this hotfix only to systems that are experiencing the problem described in this article. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.

If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix.

Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft website:
http://support.microsoft.com/contactus/?ws=support
Note The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.

Prerequisites

You must have the .NET Framework 4 installed to apply this hotfix.

Restart information

You do not have to restart the computer after you install this hotfix if the affected files are not being used.

We recommend that you close all .NET Framework applications before you install this hotfix.

Replacement information

This hotfix does not replace a previously released hotfix.

File information

The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.

For all supported x86-based versions of the .NET Framework 4
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Sqmapi.dll6.1.7600.16385196,41601-Nov-201101:27x86
System.runtime.serialization.dll4.0.30319.5251,038,64803-Nov-201106:51x86
For all supported x64-based versions of the .NET Framework 4
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Sqmapi.dll6.1.7600.16385196,41601-Nov-201101:27x86
System.runtime.serialization.dll4.0.30319.5251,038,64803-Nov-201106:51x86
For all supported IA-64-based versions of the .NET Framework 4
Collapse this tableExpand this table
File nameFile versionFile sizeDateTimePlatform
Sqmapi.dll6.1.7600.16385196,41601-Nov-201101:27x86
System.runtime.serialization.dll4.0.30319.5251,038,64803-Nov-201106:51x86
Note Because of file dependencies, the most recent fix that contains these files may also contain additional files.




STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

REFERENCES

For more information about how the serializer works, visit the following Microsoft Developer Network (MSDN) website:
Serialization and Deserialization
For more information about the NetDataContractSerializer class, visit the following MSDN website:
NetDataContractSerializer Class
For more information about collection types, visit the following MSDN website:
Collection Types in Data Contracts
For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:
824684 Description of the standard terminology that is used to describe Microsoft software updates

Properties

Article ID: 2624480 - Last Review: November 23, 2011 - Revision: 1.0
APPLIES TO
  • Windows Communication Foundation 4
  • Windows Communication Foundation
  • Microsoft .NET Framework 4
Keywords: 
kbautohotfix kbqfe kbhotfixserver kbfix kbbug kbexpertiseinter kbsurveynew KB2624480

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com