public RelationshipView Render(RelationshipModel source, int dictionaryId) { var result = source.Map <RelationshipModel, RelationshipView>(); result.RelationType = _enumRenderer.Render(source.RelationType); var links = new List <LinkView> { LinkRenderer.Render("GetRelationById", RelTypes.Self, new { id = dictionaryId, relationshipId = source.Id }), LinkRenderer.Render("GetWordById", RelTypes.SourceWord, new { id = dictionaryId, wordId = source.SourceWordId }), LinkRenderer.Render("GetWordById", RelTypes.RelatedWord, new { id = dictionaryId, wordId = source.RelatedWordId }) }; var link = LinkRenderer.ReRoute(source.Links.WithRel(RelTypes.Update)); if (link != null) { links.Add(link); } link = LinkRenderer.ReRoute(source.Links.WithRel(RelTypes.Delete)); if (link != null) { links.Add(link); } result.Links = links; return(result); }
public TranslationView Render(TranslationModel source, int dictionaryId) { if (source == null) { return(null); } var result = source.Map <TranslationModel, TranslationView>(); result.Language = _enumRenderer.Render((LanguageType)source.LanguageId); var links = new List <LinkView> { LinkRenderer.Render("GetTranslationById", RelTypes.Self, new { id = dictionaryId, translationId = source.Id }), LinkRenderer.Render("GetWordById", RelTypes.Word, new { id = dictionaryId, wordId = source.WordId }) }; var link = LinkRenderer.ReRoute(source.Links.WithRel(RelTypes.Update)); if (link != null) { links.Add(link); } link = LinkRenderer.ReRoute(source.Links.WithRel(RelTypes.Delete)); if (link != null) { links.Add(link); } result.Links = links; return(result); }