重命名SubSonic select语句中的字段

时间:2009-05-07 08:30:59

标签: subsonic

在SubSonic中执行select语句时有没有办法重命名字段?我使用 ExecuteTypedList< MyClass> 方法填充我的 List< MyClass> 对象,但MyClass的属性与DB表中的列名不完全相同。在SQL中我可以选择col1作为'FirstColumn',将col2选为MyTable的,有没有办法在SubSonic中做类似的事情?

2 个答案:

答案 0 :(得分:1)

我认为Alias只适用于聚合列。 您可以将与列相同名称的属性添加到类或部分,并将它们映射到使用ala计算字段的属性:

public class Songs

{

private string _songTitle;
public string SongTitle {
    get { return _songTitle; }
    set { _songTitle = value; }
}

public string SongName {
    get { return _songTitle; }
    set { _songTitle = value; }
}

}

答案 1 :(得分:1)

前几天我有同样的需求,并将功能添加到我的SubSonic本地副本中。我刚刚提交了一个附加到this issue的补丁。应用补丁将允许您编写类似

的查询
new Select(Table1.IdColumn.AliasAs("table1ID"),
Table2.IdColumn.AliasAs("table2ID"))
                .From(Table1.Schema)
                .InnerJoin(Table2.Table1IdColumn, Table1.IDColumn);