javascript - JayData 创建对象未按预期工作

标签 javascript entity wcf-data-services odata jaydata

我发现很难找到有关此问题的任何信息,因此我特此询问。

我想使用 JayData 实体 API 创建一个新的“连接”。一个连接有 2 个设备端口,均与设备和端口链接。所以:

Connection(Sender: DevicePort(Device, Port), Receiver: DevicePort(Device, Port))

我已经有 2 个 DevicePort(id:1 和 2)

我想与发送者和接收者创建一个新的连接。所以我这样做:

var devPort1 = previouslyFetchedDevicePortEntity1;
var devPort2 = previouslyFetchedDevicePortEntity2;
var con = DataLayer.context.ConnectionSet.add({ Sender: devPort1, Receiver: devPort2 });
DataLayer.context.saveChanges();

这正在工作,并且新的连接已添加到数据库中。但也有新的设备端口、新的设备和新的端口。它似乎克隆了以前的 DevicePorts 等,但我想要一个新的连接,其具有与我作为参数提供的相同的 DevicePorts。

最佳答案

我认为缺少以下两行来初始化先前加载的项目的entitySet:

DataLayer.context.Ports.attach(devPort1);
DataLayer.context.Ports.attach(devPort2);

我只是假设您有一个用于端口实体的 EntitySet,请在此处替换您的集的名称。

这能解决问题吗?

关于javascript - JayData 创建对象未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15063674/

相关文章:

javascript - 如何从 JavaScript 中的 <style> 标签获取样式属性?

javascript - Bootstrap 弹出框 : hide when cursor moves outside of the window

JavaScript 没有重定向

symfony - 实体中的Symfony/原则关系COUNT

java - Hibernate 无法确定集合的类型

azure - 通过 Azure 服务总线进行身份验证的 WCF 数据服务

json - 默认情况下启用 WCF 数据服务以接受/返回 JSON

javascript - 如何在使用 window.open 时停留在当前页面

swift - 编辑特定 ID 的核心数据键的值

c# - 通过 WCF 数据服务公开 Azure 表存储缺少 OData 功能