|
分類:[.NET 全般]
はじめまして。 C#、 VisualStudio2005を使用して仕事をしています。 初心者なので、質問の意図が分かりづらいと思いますが、大目に見ていただけるとありがたいです。。
削除ボタンを押したときのイベントについて質問です。 画面側とDB側にアクセスするものを別々に作っています。 また、テーブルの情報なのですが、BのテーブルはAのテーブルのIDを持っていると削除できません。(REFERENCE制約) そこで、SQL文でひとつでもBのテーブルにAのIDを持っているものがあったらfalseを返し、画面側でエラーメッセージを出す、というものを作りたいのですが、どうやってtrueかfalseかを判断させればいいのかわかりません。 (A.csでSQL文を作って、trueかfalseを返す。Aaction.csでA.csのtrueかfalseを判断し、B.aspx.csでエラーメッセージを出す。) ***************************************************************************************************************************** <<A.cs>> public bool IsA(int aID) { テーブルBをnew using (TransactionScope ts = new TransactionScope()) { //値を設定 B.aID = aID;
//Aの有無 B.IsAId(B.aID ); //更新する ts.Complete(); } //falseが返ってきたらtrueを返してエラーメッセージを出す return true; //trueが返ってきたらfalseを返して削除を行う return false; } ********************************************************************************************************************** <<Aaction.cs>> public bool IsAId(int aID) { string SQL = @" SELECT COUNT(*) as COUNT FROM B WHERE aID= @aID "; using (SqlConnection connection = DaoManager.Open()) { using (SqlCommand cmd = new SqlCommand(SQL, connection)) { cmd.Parameters.AddWithValue("aID", aID);
int count = Convert.ToInt32(cmd.ExecuteScalar()); if (count > 0) { return true; } else { return true; } } } }
分かりづらくて申し訳ないのですが、どなたかアドバイスお願いいたします。
|