Return associate members via the Ria DomainService call method

I got this DomainService method, which I call from my SL ViewModel using the Invoke attribute:

[Invoke]
public ServiceModel.Recipy GetRecipyById(int recipyId)
{
    return new Recipy
                {
                    RecipyId = 1,
                    Name = "test",
                    Description = "desc",
                    Author = new Author
                                {
                                    AuthorId = 1,
                                    Name = "Johan"
                                }
                };
}

The code in my ViewModel looks like this:

public RecipyViewModel()
{
    context.GetRecipyById(1, RecipyLoadedCallback, null);
}

private void RecipyLoadedCallback(InvokeOperation<Recipy> obj)
{
    _name = obj.Value.Name;
    _description = obj.Value.Description;
    _authorName = obj.Value.Author.Name;
}

Recipy and Author POCO / ServiceModel classes:

public class Recipy
{
    [Key]
    public int RecipyId { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }

    [Association("Author", "RecipyId", "AuthorId")]
    [Include]
    public Author Author { get; set; }
}

public class Author
{
    [Key]
    public int AuthorId { get; set; }
    public string Name { get; set; }
}

Now the code works fine, except that the author associated with it is not passed to the client / viewmodel, the Author Recipy property is null. I thought using the [Associate] and [Include] attributes would do the trick?

Thanks for any help, I'm struggling to intercept DomainService / RIA data, and I'm close to abandoning the “normal” WCF / REST :)

+3
source share
1

, [Invoke] , , , [Include] [Association] , RIA.

+2

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


All Articles