1

私は小さな情報システム アプリケーションに取り組んでいます。Windowsフォームとサービスベースのデータベースで作成しています。ほぼ完了ですが、アプリケーションを実行すると非常に奇妙な問題が発生します。データベーステーブルにデータを挿入するためのストアドプロシージャを作成し、手動で実行するとすべて正常に動作しますが、プログラムを起動してボタンをクリックしてプロシージャを実行すると、何か問題が発生します。一見すると、プログラムは正常に動作し、手順も適切に実行されていますが、データがデータベースに保存されていません。これが私のコードです:

UserData.cs

 public static bool AddStudent(Student std)
    {
        UserDataClassesDataContext dc = new UserDataClassesDataContext();
        try
        {
            dc.AddNewStudent(std.FirstName, std.SecondName, std.LastName, std.Faculty, std.Specialty, std.OKS,
                std.StudentStatus, std.FacNumber, std.Course, std.Potok, std.Group);
            dc.SubmitChanges();
        }
        catch (Exception)
        {
            return false;
        }
        return true;
    }

StudentValidation.cs

public bool InsertStudent(Student std)
    {
        return UserData.AddStudent(std);
    }

MainForm.cs ボタンクリック イベント

private void insertStudentButton_Click(object sender, EventArgs e)
    {
        Student student = new Student();
        student.FirstName = tbFirstName.Text;
        student.SecondName = tbSecondName.Text;
        student.LastName = tbLastName.Text;
        student.Faculty = tbFacultyName.Text;
        student.Specialty = tbSpecialty.Text;
        student.FacNumber = tbFacNumber.Text;
        student.OKS = (short)cbOKS.SelectedIndex;
        student.StudentStatus = (short)cbStudentStatus.SelectedIndex;
        student.Course = (short)numCourse.Value;
        student.Potok = tbFlow.Text;
        student.Group = tbGroup.Text;
        if (sv.InsertStudent(student) && sv.InsertUser(student))
            MessageBox.Show("The student is added successfully!");
        else
            MessageBox.Show("A problem occurs while trying to add the student!");
    }

アプリケーションを起動すると、データベースが何らかの理由で切断されていると思いますが、その理由はわかりません。

4

1 に答える 1