gpt4 book ai didi

c# - 寻找一个属性(装饰)来提及与自动映射器一起使用的源属性名称

转载 作者:行者123 更新时间:2023-11-30 18:24:27 35 4
gpt4 key购买 nike

我的 DTO 看起来像这样

  public class SomeDTO
{
public string last_name{ get; set; }
public string account_number { get; set; }
}

我的属性名称有下划线,因为我必须将它映射到源的属性名称。它工作正常。

但我正在寻找一些可以帮助我正确命名我的 DTO 的属性。这样我就可以拥有类似的东西。

   public class SomeDTO
{
[Something("last_name")]
public string LastName{ get; set; }
[Something("account_number")]
public string AccountNumber { get; set; }
}

“列”不起作用,因为我猜它只适用于 EF。

这是通用自动映射的代码。将数据读取器映射到 DTO。

        public T ExecuteQuerySingle<T>(List<SqlParameter> paramList, string commandString)
{
using (var conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConStr"].ConnectionString))

using (var cmd = new SqlCommand(commandString, conn))
{

cmd.CommandType = CommandType.StoredProcedure;
foreach (var param in paramList)
{
cmd.Parameters.Add(param);
}
conn.Open();
var reader = cmd.ExecuteReader();
if (reader.HasRows)
{
T item;
Mapper.CreateMap<IDataReader, T>();
while (reader.Read())
{
item = Mapper.Map<IDataReader, T>(reader);
return item;
}
conn.Close();
return default(T);
}
conn.Close();
return default(T);

}
}

最佳答案

您可以实现 INamingConvention 以将名称转换为方便的名称,也可以实现读取自定义属性和手动填充字段的逻辑

关于c# - 寻找一个属性(装饰)来提及与自动映射器一起使用的源属性名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31188709/

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