如何在将数据绑定到详细信息视图之前验证来自DB的字段

时间:2010-01-19 12:19:55

标签: c# detailsview

如何在将字段绑定到详细信息视图之前验证来自数据库的字段

我有一些字段需要在进入详细信息视图之前进行验证

对于Eg,空值字段应该被删除...并且需要为

获取更多数据

此表中的外键字段(即在其他表中有数据)

我以为我可以在ondatabinding事件中做到这一点......

protected void dvDataBinding(object sender,EventArgs e)             {              }

在以下函数中,我将传递req_ID ..

详细信息视图中的数据绑定...

public DataSet GetExceptionDataDetailedView(string strWorkRequestID)
        {
            DBManager objDBManager = new DBManager();
            StringBuilder strSQL = new StringBuilder();
           StringBuilder strColName = new StringBuilder();            //string strTableField;
            DataSet objDataSet;
            try
            {
                strSQL.Append("SELECT * FROM work_request where work_request_id='");
                strSQL.Append(strWorkRequestID);
                strSQL.Append("'");
                // Open the connection object
                objConnection = objDBManager.OpenDBConnection();

                //Create a command object to execute the Store procedure
                objCommand = new MySqlCommand();
                objCommand.CommandText = strSQL.ToString();
                objCommand.CommandType = CommandType.Text;
                objCommand.Connection = objConnection;

                MySqlDataAdapter objDataAdapter = new MySqlDataAdapter(objCommand);
                objDataSet = new DataSet();
                objDataSet.Tables.Clear();
                objDataAdapter.Fill(objDataSet);                  

            }

            catch (MySqlException exSQL)
            {
                throw exSQL;
            }
            catch (Exception exGeneral)
            {
                throw exGeneral;
            }
            finally
            {
                //close the connection object
                objDBManager.CloseDBConnection();
            }

            return objDataSet;
        }   

提前致谢

1 个答案:

答案 0 :(得分:0)

为什么要删除绑定的数据,为什么不在GetExceptionDataDetailedView返回数据集之前从数据集中删除数据。这样您就不必担心细节视图,因为它只会绑定到正确的数据。还有为什么要查找外键,正确的方法是在sql语句中创建一个连接到外表并使用外表中的相关字段。