jaydata / jaysvcutil 1.3.5对WebAPI的inverseProperty支持

时间:2014-01-09 13:38:24

标签: asp.net-web-api jaydata

我见过Missing inverse property in asp.net webapi odata $metadata,我正在处理的WebAPI $元数据的行为如本文所述:它不会重复使用双向导航属性的关联。

使用jaysvcutil 1.3.5时,所有导航属性都会显示为$$ unbound。

$data.Entity.extend('API.Models.Document', {
    ... 
    'Document_Versions': {        
        'type':'Array',
        'elementType':'API.Models.Document_Versions',
        'inverseProperty':'$$unbound' }
});

除了手动更新inverseProperty信息之外,还有什么可以自动获得所需的结果吗?

基于@Robesz的答案

更新 手动将inverseProperty信息添加到由JaySvcUtil转换的静态.js是可行的,但我问是否有一个选项可以通过动态转换来实现。

似乎有选项

  1. 对.NET WebAPI进行修改。可能具有挑战性,因为它们似乎是实施它们的充分理由,但也许有人已经成功地做到了。
  2. 修改JayData使用的转换XSLT以考虑该行为。

2 个答案:

答案 0 :(得分:0)

我们刚刚使用WebAPI OData获得了相同的结果,但是在手动编辑生成的上下文文件并添加inverseProperty之后,一切都运行良好

答案 1 :(得分:0)

这很可能是通过扩展JayData的XSLT转换来处理的。我在https://github.com/jaydata/jaydata/issues/155上为此创建了一个问题。