tags:

views:

74

answers:

1

I have a stored procedure in my Entity Framework Model. I've added a Function Import and mapped the results to a Complex Type.

I want to add an extra property to this Complex type, that I'll populate in my Domain Service, not coming back from the stored procedure. I added a myClass.shared.cs file and implemented added the property like so:

//myClass.shared.cs
public partial class myClass
{
  public string myProperty {get;set;}
}

I populate this in my domain service when I return the object, e.g.:

public myClass GetMyClass(int myClassID)
{
  myClass theClass= this.ObjectContext.StoredProc(myClassID).FirstOrDefault();
  class.myProperty = 12345;

  return theClass;
}

When I get the return values of this method on the client side theClass.myProperty is always null but all values from the stored procedure are populated, am I missing something?

I've tried decorating the myProperty with the [DataMember] attribute but this throws the error:

"The type 'myClass' already contains a definition for 'myProperty'"

How can I get this to return the value set in the Domain Service to the client?

A: 

There was no need to put this in the shared.cs class. The shared.cs class copies the actual code over to the client side and is useful for adding methods etc. but to add a new property, all I had to do was add a partial class (NOT in myClass.shared.cs) and decorate it with DataMember.

public partial class myClass
{
  [DataMember]
  public string myProperty {get;set;}
}
Fermin

related questions