C# 当使用[Column]属性序列化实体时,我返回空数据

C# 当使用[Column]属性序列化实体时,我返回空数据,c#,sql,entity-framework,C#,Sql,Entity Framework,我有一个客户实体,如下所示: [Column("Customer_id")] public int CustomerID { get; set; } [Column("Customer_Name")] public string CustomerName { get; set; } [Column("Database_name")] public string DatabaseName { get; set; } var query = "SELECT Customer_id as Custo

我有一个客户实体,如下所示:

[Column("Customer_id")]
public int CustomerID { get; set; }
[Column("Customer_Name")]
public string CustomerName { get; set; }
[Column("Database_name")]
public string DatabaseName { get; set; }
var query = "SELECT Customer_id as CustomerID, Customer_Name as CustomerName, Database_name as DatabaseName FROM xxx";
我使用[Column]属性来大写道具名称。问题是,当我尝试将SQL查询中接收到的某些数据序列化到此实体时,序列化后得到的数据为null,因为序列化机制引用的是“内联”属性的名称,而不是我在属性中给出的名称

我的SQL查询:

var query = "SELECT Customer_id, Customer_Name, Database_name FROM xxx";
return await context.Database.SqlQuery<Customer>(query).ToListAsync();
var query=“从xxx中选择客户id、客户名称、数据库名称”;
返回wait context.Database.SqlQuery(query.ToListAsync();

有人知道如何在不删除属性的情况下解决它吗?

在我的SQL SELECT查询中,我使用了“as..”并添加了与我在[Column]属性中给出的新名称相对应的名称。 现在看起来是这样的:

[Column("Customer_id")]
public int CustomerID { get; set; }
[Column("Customer_Name")]
public string CustomerName { get; set; }
[Column("Database_name")]
public string DatabaseName { get; set; }
var query = "SELECT Customer_id as CustomerID, Customer_Name as CustomerName, Database_name as DatabaseName FROM xxx";

现在序列化工作正常了

你也能给出你的表格模式吗