使用visual studio C# .NET中的odata-v4服务连接,我得到一个testDefinition类型的实体。testDefinition具有名为features的属性,它是feature类型实体的集合。
在DB中,testDefinition到feature是由多到多的连接表。

在我的代码中,我向为DB的EDMX提供服务的web服务添加了一个服务引用。
代码被正确生成,我运行:
var dsc = new Container(new Uri("http://webserver/webapi/odata/"));
var someFeature = new Feature
{
name = $"Sample feature created with C# {DateTime.UtcNow}",
};
var someOtherFeature = new Feature
{
name = $"Sample other feature created with C# {DateTime.UtcNow}",
};
dsc.AddToFeature(someFeature);
dsc.AddToFeature(someOtherFeature);
dsc.SaveChanges();
var someTestDefinition = new TestDefinition
{
name = $"Sample test created with C# {DateTime.UtcNow}",
description = $"A nice succinct description",
};
dsc.AddToTestDefinition(someTestDefinition);
dsc.SaveChanges();
someTestDefinition.features.Add(someFeature);
someTestDefinition.features.Add(someOtherFeature);
dsc.SaveChanges();问题是从测试定义到特性的映射没有记录在数据库中。
有没有人遇到过这个问题,或者更好地解决了这个问题?
供参考:

发布于 2021-03-03 01:11:29
我不能说这是什么时候实现的,但是它在以后的版本中是有效的,我可以确认的最早版本是OData.Client v 7.6.2。
如果这对于当前版本的OData客户端和服务器库上的任何新用户来说都是一个问题,则通常表明架构没有正确配置或发布。
还检查API是否使用类似当前的OData运行时,上面的测试是针对API和Microsoft.AspNet.OData v7.3.0执行的。
https://stackoverflow.com/questions/48531799
复制相似问题