//方法代码
using System;
using System.Web;
using System.Text;
using System.IO;
using System.Data;
using System.Data.SqlClient;
using gcom.Utility;
using gcom.Utility.SqlClient;
using MySql.Data.MySqlClient;
using gcom.Business.DataModel;public static AddResult Add(DataModel.manage_user Item)
        {
            StringBuilder strSQL = new StringBuilder();
            strSQL.Append("INSERT INTO manage_user (xuli,UserName,Purview,PassWord) VALUES (@xuli,@UserName,@Purview,@PassWord)");
            DBParaCommon[] para ={
new DBParaCommon("@xuli", Item.xuli),
new DBParaCommon("@UserName", Item.UserName),
new DBParaCommon("@Purview", Item.Purview),
new DBParaCommon("@PassWord", Item.PassWord)};
            int nRows = sqlProvider.ExecuteNonQuery(strSQL.ToString(), para);
            AddResult ret = (nRows == 1 ? AddResult.Success : AddResult.Failed);
            return ret;
        }
--------------------------------
//c#代码
 manage_user mu = new manage_user();
        mu.Purview = int.Parse(Label2.Text.ToString());
        mu.PassWord = Label3.Text.ToString();
        mu.UserName = Label4.Text.ToString();
        mu.xuli = Label1.Text.ToString();
        if(manage_userFactory.Add(mu) == AddResult.Success)
        {
            Label1.Text ="chenggong";  //运行结果这个确实显示
        }我打断点 return 结果都是1....但是数据库里结果是添加改行所有的项都是null..天地良心...有些还是int型的. datamodel里还设置了初始值.一切都顺利的进行..就是结果很让人沮丧

解决方案 »

  1.   

    manage_user 输出属性看看 赋值成功没有。。
      

  2.   

    方法代码里Item的值也赋值好着...会不会是代码和数据库的 字符编码集 的问题...完全无头绪的问题啊...头大
      

  3.   

    对自己的问题补充 public static DataModel.manage_user GetByID(int nID)
            {
                StringBuilder strSQL = new StringBuilder();
                strSQL.Append("SELECT Id,UserName,Purview,PassWord FROM manage_user WHERE (Id = @Id)");
                DBParaCommon[] para = { new DBParaCommon("@Id", nID) };
                MySqlDataReader reader = sqlProvider.ExecuteReader(strSQL.ToString(), para);
                if (reader == null)
                { return null; }
                if (!reader.Read())  //  此处if总能进去..
                {
                    reader.Close();
                    return null;
                }
                DataModel.manage_user NewItem = new DataModel.manage_user();
                {                NewItem.Id = nID;
                    NewItem.UserName = (String)reader["UserName"];
                    NewItem.Purview = (Int32)reader["Purview"];
                    NewItem.PassWord = (String)reader["PassWord"];
                }
                reader.Close();
                return NewItem;
            }如果手动在数据库里添加一条数据..用这个方法MySqlDataReader类型的reader能获取到..但是reader.read()总是false 然后直接return了..
      

  4.   

    把直接用SQL语句就能查出来....(不能直接编辑帖子 只能回复了.)