I have 2 classes: Person
and Contact
.
Person
class has a property named ContactNumber
which returns the Contact
type, and this property is marked as a DataMember
for serialization.
I have marked Contact
type as a DataContract
.
On the client side I am able to get the values, but when I try to insert a value and then do submit, I get the following exception:
Failed to deserialize change-set. Failed to convert value of type 'Dictionary`2' to type 'Contact'
Stack Trace is:
at System.Web.Ria.DataServiceSubmitRequest.GetChangeSet(DomainService domainService) at System.Web.Ria.DataServiceSubmitRequest.Invoke(DomainService domainService) at System.Web.Ria.DataService.System.Web.IHttpHandler.ProcessRequest(HttpContext context)
Can anyone give me the solution ?
I am just trying with this code, when i want to do insert it throws the exception written above. this is for POCO sample i am trying. code is listed below:
[DataContract]
public class Person
{
[datamember]
public int Age;
[datamember]
public string Email;
[datamember]
public string FirstName;
[Key]
public int Id;
[datamember]
public string LastName;
[datamember]
public int PhoneNumber;
[datamember]
public Contact ContactNumber;
}
[DataConrtact]
public class Contact
{
int num;
[DataMember]
[Key]
public int Number
{
get { return num; }
set { num=value; }
}
}
Actually, both are marked as DataContract, and properties as well with Datamember attribute.
Person class is generatd from EDM Entity model. and i want to have custom property with it, which is Contact type. How should i do it ?