私は小さな情報システム アプリケーションに取り組んでいます。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!");
}
アプリケーションを起動すると、データベースが何らかの理由で切断されていると思いますが、その理由はわかりません。