NHibernate - HQL - 添加和更改
添加:
/// <summary>
/// 等待乙方做出回应 A
/// </summary>
private void button2_Click_1(object sender, EventArgs e)
{
//使用NHibernate,进行存储
Chinfo c = new Chinfo(); c.CtinfoId = ID;
c.Goodsinfo = "白玉手镯";
c.Buyersinfo = "甲方";
c.Sellerinfo = "乙方";
c.Infocreatetime = DateTime.Now;//字段Infocreatetime是DateTime类型,所以此处不能ToString.
c.Currentgoodsstate = "A";
c.Goodsflow = "";
c.Goodsflownowtime = DateTime.Now.ToString();
c.CourierId = ""; try
{
NHelper.Session().Save(c);
NHelper.Trans().Commit();
MessageBox.Show("保存成功!", "提示");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "提示");
} this.btn_A.Enabled = false;//禁用A
this.btn_B.Enabled = true;//开启B
this.btn_C.Enabled = true;//开启C
}
修改:
/// <summary>
/// 乙方已同意请求 等待公司做出回应 B 1100000
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button3_Click(object sender, EventArgs e)
{
try
{
IQuery query = NHelper.Session().CreateQuery("from Chinfo c where c.CtinfoId = ?"); query.SetParameter(, ID); IList<Chinfo> list = query.List<Chinfo>(); list[].Currentgoodsstate = "B";
list[].Goodsflow = "";
list[].Goodsflownowtime = list[].Goodsflownowtime + "-" + DateTime.Now.ToString(); NHelper.Session().Update(list[]); NHelper.Trans().Commit(); MessageBox.Show("修改成功!", "提示");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "提示");
} this.btn_B.Enabled = false;//禁用B
this.btn_C.Enabled = false;//禁用C
this.btn_D.Enabled = true;//开启D
this.btn_E.Enabled = true;//开启E
}
NHelper.cs代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using NHibernate;
using NHibernate.Cfg; namespace Changing
{
public static class NHelper
{
//变量声明
static ISession session = null;
static ISessionFactory factory = null;
static ITransaction trans = null; //读取配置文件
static Configuration cfg = new Configuration().Configure(@"Config/NHibernate.cfg.xml"); /// <summary>
/// 创建Session工厂
/// </summary>
/// <returns></returns>
public static ISessionFactory Factory()
{
return factory = cfg.BuildSessionFactory();
} /// <summary>
/// 创建Session
/// </summary>
/// <returns></returns>
public static ISession Session()
{
return session = Factory().OpenSession();
} /// <summary>
/// 创建事务
/// </summary>
/// <returns></returns>
public static ITransaction Trans()
{
trans = session.BeginTransaction(); return trans;
}
}
}
NHibernate - HQL - 添加和更改的更多相关文章
- hibernate HQL添加语句
1.Hibernate HQL添加语句 save();方法使用HQL语句来完成插入操作是不能实现的,不管你使用insert into....values...还是insert into.....sel ...
- [NHibernate]HQL查询
目录 写在前面 文档与系列文章 查询的几种方式 HQL查询 一个例子 总结 写在前面 上篇文章介绍了nhibernate在项目中的基本配置,包括数据库连接字符串的设置,映射文件的配置及需注意的地方,这 ...
- Hibernate之HQL添加过滤器查询的用法
HQL查询过程中支持添加过滤器.使用步骤是这样的: 首先在要查询的实体对象的映射中使用<filter-def>标签配置过滤器,并在相对应的<class>标签中添加对应的< ...
- 动态添加和更改F7编辑器(div和editGrid列)
//更改列编辑器 waf("#editGrid").wafGrid("setColumnConfig", "settlementType", ...
- NHibernate -- HQL
使用NHibernate中的HQL来查询数据. 代码: /// <summary> /// 查找事件 /// </summary> private void btn_Selec ...
- Nhibernate HQL 匿名类(严格说是map的使用以及构造函数的使用
1.map的使用 var hql=string.Format(@"select new map( tc.LimitIndexType as LimitIndexType, tc.LimitS ...
- [NHibernate]一对多关系(级联删除,级联添加)
目录 写在前面 文档与系列文章 一对多关系 一个例子 级联删除 级联保存 总结 写在前面 在前面的文章中,我们只使用了一个Customer类进行举例,而在客户.订单.产品中它们的关系,咱们并没有涉及, ...
- NHibernate系列文章二十二:NHibernate查询之HQL查询(附程序下载)
摘要 NHibernate提供了多种查询方式,最早的HQL语言查询.Criteria查询和SQL Query,到NHibernate 3.0的Linq NHibernate,NHIbernate 4. ...
- [NHibernate]并发控制
目录 写在前面 文档与系列文章 并发控制 乐观并发控制(Optimistic Concurrency) 一个例子 悲观并发控制(Pessimistic Concurrency) 总结 写在前面 上篇文 ...
随机推荐
- 高级UNIX环境编程3 FILE IO
POSIX中,STDIN_FILENO,STDOUT_FILENO,STDERR_FILENO 对应0,1,2 每个打开的文件都有一个与其想关联的 "current file offset& ...
- 转:用JS判断IE浏览器的版本(-- 很巧妙实用的方法)
~~在看到这篇文章之前如果让我来判断IE的版本,那么我基本上会用 navigator.userAgent去做字符串检索,现在觉得特性检测的确比较靠谱一点 今天一个项目中需要判断IE版本号,又因为 jQ ...
- 利用Mono.Cecil动态修改程序集来破解商业组件(仅用于研究学习)
原文 利用Mono.Cecil动态修改程序集来破解商业组件(仅用于研究学习) Mono.Cecil是一个强大的MSIL的注入工具,利用它可以实现动态创建程序集,也可以实现拦截器横向切入动态方法,甚至还 ...
- Open vswitch 之Qos rate-limiting 原理
Openvswitch之Qos rate-limiting原理 OVS的qosrate-limiting功能是采用令牌桶(Token-Bucket)机制进行的.这里的“令牌桶”是指网络设备的内部存储池 ...
- opencv是什么
OpenCV是一个用于图像处理.分析.机器视觉方面的开源函数库. 不管你是做科学研究,还是商业应用,opencv都能够作为你理想的工具库,由于,对于这两者,它全然是免费的.该库採用C及C+ ...
- ThinkPHP - 连贯操作 - 【实现机制】
<?php //模型类 class Model { //数据库连接 private $_conn = NULL; //where语句 private $_where = NULL; //表名称 ...
- G - 小希的迷宫(并查集)
1今天准备复习三道以前做过的题呢,结果只看了一道,也因为交题的时候没把测试时候为了方便而改的数字改过来而wrong answer,浪费了好长时间,啊啊啊~~ 不过这道题应该是掌握了,嘿嘿…… Desc ...
- IP数据包结构
Linux 网络编程——IP 数据报格式详解 http://www.linuxidc.com/Linux/2015-04/116149.htm
- [Swust OJ 541]--排列字典序问题
题目链接:http://acm.swust.edu.cn/problem/0541/ Time limit(ms): 2000 Memory limit(kb): 65535 n个元素{1,2,... ...
- php下正则表达式整理
一.正则表达式的历史背景 1,内容深厚的正则表达式 ^.+@.+\\..+$ 形式 字符串搜索与匹配的工具 2,应用范围 手机输入法 Windows文件搜索 linux 列出文件命令 网站用户注册,如 ...