查询OData元数据中的自定义字段

时间:2018-02-08 13:39:28

标签: c# asp.net linq odata project-server

我的任务是从Microsoft Project服务器检索OData。在Querying OData feeds for Project reporting data之后,我能够检索每个项目的所有默认Microsoft Project字段。可以在项目服务器上的元数据中找到每个默认字段列。

现在我需要访问每个级别的对象的自定义字段。我使用了下面的linq和上下文:

WebDCWater.ProjectOData.ReportingData context = 
             new WebDCWater.ProjectOData.ReportingData(new Uri(PSDATA, UriKind.Absolute));

var proj = context.Projects
            .OrderBy(p => p.ProjectName).Select(p => p).FirstOrDefault();

此查询获取每个项目的默认列值(ProjectEndDate,ProjectDuration,ProjectName等)。但是,我需要访问元数据中找不到的自定义字段。

如何扩展我的服务参考以包含自定义字段?是否有需要在项目服务器端进行更改的内容?

根据MSDN,自定义字段和关系应包含在服务引用中:

  

设置ProjectData或查询的服务引用时   〜/ ProjectData / $ metadata,实体数据模型(EDM或OData模式)   包括引用时的自定义字段属性。

0 个答案:

没有答案