1

わかりましたので、いくつか試してみましたが、行き詰まり続けています。ある時点で更新ボタンが機能していましたが、現在は更新されません。削除ボタンは機能してレコードを削除しますが、レコードが削除された後にグリッドビューを更新できません。また、更新ボタンが押されてレコードが更新された後、グリッドビューをリロードする必要があります。ここに私が持っているものがあります:

protected void btnDelete_Click(object sender, EventArgs e)
        {
            switch (btnDelete.Text)
            {
                case DeleteButton:
                    try
                    {
                        if (txtLocationName.Text != null && txtSubAccountName.Text != null)
                        {
                            Location locationCheck = _context.Locations.ToList()
                                                    .First(x => x.Name == txtLocationName.Text && x.SubAccount == txtSubAccountName.Text);
                            if (locationCheck != null)
                            {
                                Location n = new Location
                                {
                                    Id = grdvwLocationList.SelectedIndex,
                                    Name = txtLocationName.Text,
                                    SubAccount = txtSubAccountName.Text
                                };

                                _context.Locations.Remove(n);
                                _context.SaveChanges();



                            }
                        }
                    }
                    catch (Exception)
                    {
                        lblLocationNameNotification.Text = "Please type in a location/sub-account or select a location/sub-account that doesn't have a asset to delete.";
                        txtLocationName.Text = "";
                        txtSubAccountName.Text = "";
                    }
                    break;
                case CancelButton:
                    Reload();
                    break;
            }
        }





    public void PopulateLocationGridView()
    {
        var locations = _context.Locations.Where(l => l.CompanyId == CompanyId)
                        .OrderBy(l => l.Name)
                        .ToList();

        grdvwLocationList.DataSource = locations;
        grdvwLocationList.DataBind();

        if (locations.Count > 0)
        {
            grdvwLocationList.SelectedIndex = 0;
            RowSelected();
        }
        else
        {
            txtLocationName.Text = "";
            txtSubAccountName.Text = "";
        }
    }

追加ボタンは問題なく機能し、グリッド ビューを更新しているようです

4

2 に答える 2