Grove Kit tool 2008 Update方法问题

今天使用 ORM的Grove Kit tool 2008 时,底层ObjectOperator创建完调用Update()时一直报错,未将对象引用到实例,

错误参考

 public int Update(guoshui entity)
        {
            List<string> keys = new List<string>();
            ArrayList values = new ArrayList();

            keys.Add("scoredate");
            values.Add(entity.scoredate);
            keys.Add("yns");
            values.Add(entity.yns);

    。。中间略100多行。。。
            keys.Add("sjns");
            values.Add(entity.sjns);
            keys.Add("qse");
            values.Add(entity.qse);
            keys.Add("znj");
            values.Add(entity.znj);
            keys.Add("qsrq");
            values.Add(entity.qsrq);
            keys.Add("bz");
            values.Add(entity.bz);

            string filter = "id=" + entity.id;
            return new ObjectOperator(Define.ConnectionKey).Update(typeof(guoshui), filter, keys.ToArray(), values.ToArray());
        }

(为什么使用以上那种,不调用Update(object obj,string filter)的方法是因为 这种更改不支持自动增长列)

GROVE KIT TOOL 底层应该是拼写SQL 语句的形式 :Update tableName set ..  而这条语句应该是有长度限制的,比如VARCHAR(5000)

由于这张表有68个字段,所以拼接时SQL语句过长,超出限制,所以调用new ObjectOperator(Define.ConnectionKey).Update(typeof(guoshui), filter, keys.ToArray(), values.ToArray());方法时报错。

关于Grove Kit tool 2008的资料很少,希望能对使用它的朋友有一定帮助

posted on 2010-06-22 17:22  Brian.G  阅读(263)  评论(0编辑  收藏  举报