gpt4 book ai didi

Dapper-dot-net "no column name"

转载 作者:行者123 更新时间:2023-12-01 23:34:43 25 4
gpt4 key购买 nike

我有一个可能如下所示的结果集:

ID    (no column name)  anotherID
---- ---------------- ----------
1 super 3
1 super 4
3 duper 6
4 really 7
4 really 8

我有两个问题:

第一:如何在没有名称的列中使用 dapper?

第二:我想要一个父子关系,这样我就可以得到 3 个对象,每个对象都有一个 anotherID 的列表,例如:
public class MyObject
{
public int ID
public string Name
public int[] Children
}

最佳答案

好吧,dapper 不支持未命名的列。我从来没有真正看到他们的理由。

我想我们可以建立对以下方面的支持:

class Foo { [ColumnNumber(1)] public string Name {get;set;} }

问题是它引入了一种我非常不喜欢的非常脆弱的查询方法,将指令传递给 Query一样笨重。

但是,如果您乐于改变获取结果的方式,则可以解决此问题。
var grid = QueryMultiple(@"set nocount on 
declare @t table(Id int, Name nvarchar(max), AnotherId int)

insert @t
exec proc

set nocount off
select Id, Name from @t
select Id, AnotherId from @t
");

然后使用这里的技术进行多映射: Multi-Mapper to create object hierarchy

关于Dapper-dot-net "no column name",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7326375/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com