我正在尝试通过添加一个相对简单的实体Telerik.OpenAccess
。
该实体的一个属性是通过 c# 设置的 GUID GUID.NewGuid()
。
该属性在调用之前设置得很好,SaveChanges()
但随后在 SQL Profiler 中查看该值全为 0。
有人经历过吗?在这里或 Telerik 的论坛上找不到任何建议,并且不知道如何取得进展。
我正在尝试通过添加一个相对简单的实体Telerik.OpenAccess
。
该实体的一个属性是通过 c# 设置的 GUID GUID.NewGuid()
。
该属性在调用之前设置得很好,SaveChanges()
但随后在 SQL Profiler 中查看该值全为 0。
有人经历过吗?在这里或 Telerik 的论坛上找不到任何建议,并且不知道如何取得进展。
我假设 GUID 列是表的标识列,并且 Telerik OpenAccess ORM 配置为让 SQL Server 填充标识列值。
要更改此配置,您可以在Visual Designer中选择有问题的类,按 F4 打开其属性窗口并将其Identity Mechanism设置为Default。很可能它当前设置为DatabaseServerCalculated作为使用数据库优先方案的默认值:
这样,OpenAccess ORM 将在调用 SaveChanges 方法之前尊重给定的值,而不是等待服务器填充列。