ibatis.net:第三天,Insert 手工生成主键的模型 自动生成主键的模型

xml 配置

1     <insert id="InsertUser" parameterClass="User">
2       INSERT INTO [Users]
3       (Id, Name)
4       VALUES
5       (#Id#, #Name#)
6     </insert>

代码

 1         public static void InserUser()
 2         {
 3             var mapper = Mapper.Instance();
 4 
 5             var user = new User
 6             {
 7                 Id = Guid.NewGuid(),
 8                 Name = "段光伟"
 9             };
10 
11             var result = mapper.Insert("InsertUser", user);
12             Console.WriteLine(result);
13         }

备注

Insert 的返回结果为 null。

自动生成主键的模型

xml

1     <insert id="InsertOrder" parameterClass="Order">
2       INSERT INTO [Orders]
3       (Customer)
4       VALUES
5       (#Customer#)
6       <selectKey type="post" resultClass="int" property="Id" >
7         select @@IDENTITY as value
8       </selectKey>
9     </insert>

代码

 1         public static void InserOrder()
 2         {
 3             var mapper = Mapper.Instance();
 4 
 5             var order = new Order
 6             {
 7                 Customer = "段光伟"
 8             };
 9 
10             var result = mapper.Insert("InsertOrder", order);
11 
12             Console.WriteLine(order.Id);
13             Console.WriteLine(result);
14         }

备注

order.Id 已经自动包含了生成的主键值,Insert 的返回结果是主键值。