You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ServiceStack.OrmLite子查询中表值参数(TVP)类型信息丢失问题求助

ServiceStack.OrmLite子查询中表值参数(TVP)类型信息丢失问题求助

最近我发现了一篇介绍如何在任意ServiceStack.OrmLite查询中使用表值参数(TVP)的文章,这个方法在单一查询里用起来效果很好,但当我尝试在子查询中使用这个方法时,子查询里的TVP的SqlDbType和TypeName属性会在合并到主查询后丢失。

这篇文章里提到的方法是用自定义OrmLiteConverter,把DataTable转换成SQL Server的用户定义表类型。

先贴出SQL里创建用户定义表类型的代码:

CREATE TYPE [dbo].[Integer_Table_Type] AS TABLE(
    [Id] [int] NOT NULL,
    PRIMARY KEY CLUSTERED 
(
    [Id] ASC
)WITH (IGNORE_DUP_KEY = OFF)
)
GO

再贴出对应的C#自定义转换器代码:

public class SqlServerDataTableConverter : OrmLiteConverter
{
    public override string ColumnDefinition
        => throw new NotImplementedException("...");
}

备注:内容来源于stack exchange,提问作者Kevin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.16 11:18:16