0

asp.net の割り当てに取り組んでいます。プロファイル情報をユーザーに表示し、ユーザーが編集したい場合は編集する必要があります。

今、私の問題は:

プロファイル情報をユーザーに表示することはできますが、編集中に (プロファイル情報の編集に同じテキスト ボックスを使用しています)、同じテキスト ボックス内のテキストの以前の値、つまり次のものを取得しています。私のデータベース。新しいテキストに置き換えても、テキスト ボックス内のテキストは置き換えられません。

以下のコードでtxtEditNameは、データベースから値を取得しています。クリックイベントで編集したいのですbtnSaveChangesが、コードをデバッグすると、データベースからの値が持続することがわかりました。

私のテストボックスは:

<asp:TextBox ID="txtEditName" runat="server" Width="200px" Height="25px" Enabled="false"></asp:TextBox>

私のaspx.csコードは次のとおりです。

BALSuperAdminProfile objSuperAdminProfile = new BALSuperAdminProfile();
DataTable dt;
int sa_id = 1;

void showSuperAdminInfo()
     {
          try
           {
               dt = objSuperAdminProfile.getSuperAdminProfileDetails(sa_id);

               txtEditName.Text = dt.Rows[0][2].ToString();
           }
         catch (Exception Ex)
                {
                    lblResult.Text = "Could Not load Database. Please try Again latter.";
                }
            }

            protected void Page_Load(object sender, EventArgs e)
            {
                showSuperAdminInfo();
            }

            protected void btnSaveChanges_Click(object sender, EventArgs e)
            {
                string name=txtEditName.Text;
                try
                {
    dt = objSuperAdminProfile.editSuperAdminProfile(sa_id, name,);
                    lblResult.Text = dt.Rows[0][0].ToString();
                    showSuperAdminInfo();
                }
                catch (Exception Ex)
                {
                    lblResult.Text = Ex.Message;
                }

            }

            protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
            {
                txtEditName.Enabled = true;       
            }
        }

何が問題なのですか?

助けてください。

4

2 に答える 2

0

テキスト ボックスに名前を表示しているときに、showSuperAdminInfo() で row[0][0] 要素を使用しています。

txtEditName.Text = dt.Rows[0][2].ToString();

ラベルに結果を表示しているときに、btnSaveChanges_Click() で別のインデックスを使用している場合

lblResult.Text = dt.Rows[0][0].ToString();

チェックするもう1つのことは、ビジネスレイヤーの関数 editSuperAdminProfile() です。

于 2013-03-14T06:32:33.253 に答える