Dapper.Contrib - InsertAsync 无法插入 HIERARCHYID 键
Dapper.Contrib - InsertAsync fails to insert an HIERARCHYID key
我们的项目中有一个 table,其主键为 HIERARCHYID 类型:
CREATE TABLE [dbo].[OurTable]
(
[Id] HIERARCHYID NOT NULL,
<other fields>
)
和对应的 class 用于 Dapper 查询:
[Table("OurTable")]
public class OurTable
{
[ExplicitKey]
public SqlHierarchyId Id { get; private set; }
<other fields>
}
创建并初始化对象,调用 InsertAsync,并立即失败并显示 "Cannot insert Null into Id field",即使调试显示 Id 不为空并且在我们尝试插入时具有正确的值.
[ExplicitKey] 属性 was added 专门用于修复此类情况,但看起来……不是吗?我还能在这里缺少什么?
如果您从未解决过这个问题,它实际上可能是 Dapper 中的一个现有错误 here on GitHub。
我们的项目中有一个 table,其主键为 HIERARCHYID 类型:
CREATE TABLE [dbo].[OurTable]
(
[Id] HIERARCHYID NOT NULL,
<other fields>
)
和对应的 class 用于 Dapper 查询:
[Table("OurTable")]
public class OurTable
{
[ExplicitKey]
public SqlHierarchyId Id { get; private set; }
<other fields>
}
创建并初始化对象,调用 InsertAsync,并立即失败并显示 "Cannot insert Null into Id field",即使调试显示 Id 不为空并且在我们尝试插入时具有正确的值.
[ExplicitKey] 属性 was added 专门用于修复此类情况,但看起来……不是吗?我还能在这里缺少什么?
如果您从未解决过这个问题,它实际上可能是 Dapper 中的一个现有错误 here on GitHub。