ActiveRecord返回部分字段的查询
1. 自定义非受管实体类
namespace IOT{
public class CustomerProjection{
public int ID = 0;
public string Name = "";
public CustomerProjection(int id, string name){
ID = id;
Name = name;
}
}
}
2. 在实体类属性添加对自定义非受管实体类的引入
[Imprt(typeof(IOT.CustomerProjection), "CustomerProjection")]
[ActiveRecord("Customers")]
public class Customer : ActiveRecordBase<Customer>
{
[PrimaryKey(PrimaryKeyType.Assigned)]
public string CustomerID
{
get { return customerID; }
set { customerID = value; }
}
.....
}
3. 在代码中用检索字段生成自定义非受管实体类
protected void Page Load(object sender, EventArgs e)
{
IActiveRecordQuery query = new HqlBasedQuery(typeof (Customer),
@"select new CustomerProjection(c.CustomerID, c.CompanyName)
from Customer c join c.Orders o where c.Country = 'USA'
group by c.CustomerID, c.CompanyName, c.City, c.Region
");
GridView1.DataSource = ActiveRecordMediator.ExecuteQuery(query);
GridView1.DataBind();
}