来自edmx模型的odata类生成

问题描述 投票:0回答:1

我正在尝试使用来自另一个ODATA API的代码中的现有ODATA端点的数据。

我不想手动重新创建所有模型,所以我希望使用现有的edmx模型来创建我需要的C#类。

我查看了微软提供的“odata客户端代码生成器”,这似乎是完美的解决方案,但是如果我直接连接到服务端点,我只能让它工作...如果我下载edmx它就不起作用文件并尝试使用它(即使教程说您可以使用URL或文件)。

有没有人能够成功地将此odata客户端代码生成器连接到edmx文件?

如果我不能使这个工作,有没有人有关于如何从这些edmx模型生成我需要的类的其他建议?

我特意尝试使用Microsoft Project Online中的元数据。它给出了这样一个端点:https://[domain]/sites/pwa/_api/ProjectData/ $ metadata

我不能直接连接到此,因为它需要身份验证,而odata客户端代码生成器不支持身份验证...

c# odata edmx
1个回答
0
投票

odata客户端代码生成工具似乎不支持VS 2017。我现在正在尝试VS 2015。

编辑:我已经确认客户端代码生成工具适用于2015年的visual studio社区。我无法让它工作,因为我在视觉工作室专业2017下运行它...微软员工在几个论坛上报告说这个VS 2017下不支持工具。

此外,我发现这个服务仍然无法使用OData客户端代码生成器,因为它是OData V3,该工具仅适用于OData V4。您必须使用DataSvcUtil.exe从早期版本的OData生成代码。我下载了.edmx文件并运行以下命令来生成类:

"%windir%\Microsoft.NET\Framework\v3.5\DataSvcUtil.exe" /dataservicecollection /version:2.0 /language:CSharp /out:TestOutput.cs /in:C:\Users\[username]\DevelLocal\test1.edmx
© www.soinside.com 2019 - 2024. All rights reserved.