If you create a DomainService by exposing an object, can you access aggregate objects?

Suppose you created an RIA DomainService and you included an object in it Person(shown below), can you access aggregate objects on this object?

For example, if I have such entities (keep in mind that this is a naive representation, they are modeled using the EF4 designer):

public class Person
{
    string FirstName { get; set; }
    PhoneNumber { get; set; }
}

public class PhoneNumber
{
    public string AreaCode { get; set; }
    public string Trunk { get; set; }
    public string Number { get; set; }
}

If I Personenable when creating PeopleDomainService, can the client access PhoneNumberit (and change it)?

+3
source share
2 answers

Yes, you can link related objects.

PeopleDomainService.metadata.cs PersonMetadata. PhoneNumbers "":

[Include]:
public EntityCollection<PhoneNumber> PhoneNumbers { get; set; }

PeopleDomainService.cs GetPersons , PhoneNumbers:

public IQueryable<Person> GetPersons()
{
    return this.ObjectContext.Persons.Include("PhoneNumbers");
}

MSDN > : RIA >

+1

PhoneNumber Person [Include]. , include LINQ, Person.

+2

Source: https://habr.com/ru/post/1779285/


All Articles