xml
<statement id="LoadOrder" parameterClass="int" resultClass="Order">
SELECT Id, Customer FROM [Orders] WHERE Id = #value#
</statement>
代码
public static void LoadOrder()
{
var mapper = Mapper.Instance(); var order1 = new Order { Customer = "段光伟" };
var orderId = mapper.Insert("InsertOrder", order1); var order2 = mapper.QueryForObject<Order>("LoadOrder", orderId);
var order3 = new Order();
mapper.QueryForObject<Order>("LoadOrder", orderId, order3); Console.WriteLine(order1.Customer);
Console.WriteLine(order2.Customer);
Console.WriteLine(order3.Customer);
Console.WriteLine(order1 == order2); // False
}
备注
QueryForObject 可以应对两种常见,A:重新创建一个对象;B:填充一个现有对象,可以多次调用这个方法,多次填充同一个对象。非常重要的一点是:ibatis 不支持主键映射。