public class MyType
{
public int Id { get; set;}
public int[] MyArray { get; set; }
}
var sql = "SELECT id, MyArrayAsJson as MyArray";
var x = await connection.QueryAsync<MyType>(sql);
我有一个存储在数据库中的字符串,看起来像json:[1,2,3,4,5]
当我用Dapper查询数据库时,我希望dapper反序列化为一个对象MyType。 Dapper希望MyArrayAsJson成为一个字符串,因为它是,但我希望它反序列化为一个int数组。这可能吗?
答案 0 :(得分:5)
Dapper想要与你的花哨序列化shenanigans没什么关系:)基本上,没有:从数据库中读取它作为字符串,然后反序列化。
添加一个提供对传入数据的更直接/原始访问的API作为BLOB / CLOB序列会很好,但今天在Dapper中不存在。
答案 1 :(得分:1)
select rows, columns... from (
select dense_rank() over ( partition by a.ID order by MAIL_DT) as rows, columns...
...
)
where rows = 1