Сервер asp.net c # не видит изменений в данных от клиента - PullRequest
0 голосов
/ 02 ноября 2011

У меня есть веб-форма asp.net, где пользователь может вводить данные и отправлять в таблицу базы данных на sql-server-2008

  1. пользователь выбирает первичный ключ записи, которую хочет отредактировать, перейдя по URL-адресу http://someurl/default.aspx?primarykey=123
  2. на основе первичного ключа веб-формы успешно заполнено
  3. пользователь может вносить изменения в любые данные и повторно отправлять их для обновления в базу данных для этого конкретного PK

вот как я получаю данные из пользовательской формы:

    public LOMDLL.Main_Lom_Form PopulateMainForm()
    {
        //populate class
        LOMDLL.Main_Lom_Form TheForm = new LOMDLL.Main_Lom_Form();

        try
        {
            TheForm.received_date = received_dateTextbox.Text.ToDateTime();
            TheForm.site_of_occurrence = site_of_occurrenceTextBox.Text.ToUpper();
            TheForm.occurrence_date = occurrence_dateTextBox.Text.ToDateTime();
            TheForm.report_by = report_byTextBox.Text;


            if (RadioButtonList1.SelectedValue != "Other:")
                TheForm.identified_by = RadioButtonList1.SelectedValue;
            else
                TheForm.identified_by = "Other: " + otherTextBox.Text;


            TheForm.practice_code = txtPracticeCode.Text.ToUpper();
            TheForm.comments = txtComments.Text;
            TheForm.report_date = report_dateTextBox.Text.ToDateTime();
            //TheForm.windows_user = WindowsIdentity.GetCurrent().Name;
            TheForm.windows_user = HttpContext.Current.User.Identity.Name.ToString();
            TheForm.computer_name = System.Environment.MachineName;
            TheForm.time_stamp = DateTime.Now;
        }
        catch (Exception e)
        {

        }

        return TheForm;
    }

возвращает старые данные. он возвращает то, что было в полях, ДО того, как пользователь обновил данные в текстовых полях.

другими словами, когда я отлаживаю, и я смотрю на значения, которые хранятся в текстовых полях, они НЕ отражают изменения, сделанные пользователем. значения те же, что и в данный момент в базе данных до обновления!

что я делаю не так?

есть ли какое-то разъединение между клиентом и сервером?

1 Ответ

4 голосов
/ 02 ноября 2011

Я бы проверил ваши привязки при загрузке страницы.Скорее всего, вы повторно привязываете свою страницу из своей базы данных, прежде чем пытаться прочитать измененные значения.

Проверьте страницу Page_Load и убедитесь, что вы связываете свою страницу только с информацией базы данных, когда! Page.IsPostBack, а не каждыйвремя загрузки страницы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...