SQL Server データベースに接続しており、単純な CRUD 操作を実行できます。Form
ここで、データベース内の人が今日誕生日を迎えたときにアプリに 1 秒(リマインダー フォーム) を表示させたいのですが、アプリを実行しても何も起こりません。
編集: リマインダー フォームが正しく表示されるようになりましたが、そのフォームを閉じようとすると、次のエラー メッセージが表示されます。
破棄されたオブジェクトにアクセスできません。オブジェクト名: 'Form2'。
これが私のコードです:
public partial class Form1 : Form
{
Timer timer = new Timer();
Form2 forma = new Form2();
public Form1()
{
InitializeComponent();
var data = new BirthdayEntities();
dataGridView1.DataSource = data.Tab_Bday.ToList();
timer.Tick += new EventHandler(timer_Tick);
timer.Interval = (1000) * (1);
timer.Enabled = true;
timer.Start();
}
private void timer_Tick(object sender, EventArgs e)
{
Boolean flag = false;
IQueryable<Tab_Bday> name;
using (var data2 = new BirthdayEntities())
{
name = (from x in data2.Tab_Bday
select x);
foreach (var x in name)
{
if (x.Datum.Day == System.DateTime.Now.Day && x.Datum.Month == System.DateTime.Now.Month)
{
flag = true;
break;
}
}
}
if (flag == true)
forma.Show();
}