0

詳細ビューにバインドする前にDBからフィールドを検証する方法

詳細ビューに入る前に検証する必要のあるフィールドがいくつかあります

たとえば、null値のフィールドを削除する必要があります...そして、

このテーブルの外部キーであるフィールド(つまり、他のテーブルにデータがある)

私は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;
        }   

前もって感謝します

4

1 に答える 1

0

バインドしているデータを削除する必要があるのはなぜですか。GetExceptionDataDetailedView によって返される前にデータセットからデータを削除しないのはなぜですか。そうすれば、詳細ビューは正しいデータにのみバインドされるため、詳細ビューについて心配する必要はありません。また、なぜ外部キーを検索する必要があるのでしょうか。正しい方法は、SQL ステートメントで外部テーブルへの結合を作成し、外部テーブルの関連フィールドを使用することです。

于 2010-01-19T21:19:41.183 に答える