gpt4 book ai didi

c# - Dapper:将字符串转换为枚举

转载 作者:太空狗 更新时间:2023-10-29 23:50:51 25 4
gpt4 key购买 nike

我是 Dapper 的新手,我想弄清楚它是否可以处理将数据库字符串映射到枚举;默认情况下它不会发生在我身上。

例如,假设我使用这个 SQL

select customer_type from customers

和这个类

public class Customer
{
...
public CustomerType CustomerType { get; set; }
...
}

用这个枚举

public enum CustomerType
{
Unknown,
SomeCustomerType,
...
}

在这种情况下,我总是以默认枚举值(未知)结束,而不是数据库中字符串值的映射。

有人知道我怎样才能做到这一点吗?

编辑:我知道这对于数字字段是可能的,因为数字将转换为枚举,但缺点是必须确保数据库 ID 和枚举保持同步。我正在寻找类似但带有字符串的东西。

最佳答案

如果您将列名别名设置为与您的属性同名,那也应该有效:

选择
REPLACE(customer_type, ' ','') 作为客户类型
来自客户

如果数据库中 customer_type 字段的值有任何空格,您还可以使用 replace 函数删除空格。

关于c# - Dapper:将字符串转换为枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28579597/

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