gpt4 book ai didi

dapper - 让 Dapper 返回一个空字符串而不是一个空字符串

转载 作者:行者123 更新时间:2023-12-04 14:15:20 25 4
gpt4 key购买 nike

我知道这是一种错误的做法,但我正在处理具有 NULLS 的遗留代码库,当它表示空字符串时,反之亦然。

我无法立即看到它是如何可能的,但是当从数据库映射回来时,是否有可能获取(或修改 dapper 以便它会)返回一个空字符串而不是空字符串。

最佳答案

Dapper 在看到 null 时不会调用任何 setter,因此选项可能包括:

  • 将默认值设置为 ""在构造函数中
  • 检查 null在访问器中

  • 所以:
    public class SomeDto
    {
    public SomeDto()
    {
    Name = "";
    }
    public string Name {get;set;}
    }

    或者:
    public class SomeDto
    {
    private string name;
    public string Name { get {return name ?? "";} set {name = value;} }
    }

    但是,这只适用于读取值;我想不出一个让小巧玲珑转身的好方法 ""进入 null将 dto 作为参数对象传入时;选项包括:
  • 创建一个匿名类型,替换为 ""null (也许写一个string NullIfBlank(this string s) 扩展方法)
  • 在返回 null 的类型上具有 shim 属性代替"" ,并将您的数据库查询绑定(bind)到 @NameOrNull而不是 @Name
  • 关于dapper - 让 Dapper 返回一个空字符串而不是一个空字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13944651/

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