0

.aspx ページ (asp.net) に 10 個のラジオ ボタン リストがあり、データベースには 1 行 (名前 Answer) があります。

1.モデルレイヤーで、このコードについて言及します

 public class DimensionQuestion
        {
           public string NewCompanyName { get; set; }
           public string NewSurveyName { get; set; }
           public List<int> NewAnswer { get; set; }
        }

2.データレイヤーレイヤーで、このコードについて言及します。

public static bool InsertNewDimAnswer(DimensionQuestion dimension)
       {
           bool result;


           using (var helper = new DbHelper())
           {
               _cmdtext = "sp_InsertNewDimAnswer";

               var success = new SqlParameter("@Success", SqlDbType.Bit, 1, ParameterDirection.Output, true, 0, 0,
                                              "Result", DataRowVersion.Default, 0);

               foreach (string s in dimension.NewAnswer)
               {
                   if (s.Trim().Length > 0)
                   {
                       var parameter = new[]
                                    {
                                        new SqlParameter("@CompanyName", dimension.NewCompanyName),
                                        new SqlParameter("@SurveyName", dimension.NewSurveyName),


                                        new SqlParameter("@Answer",s  ),

                                        success,
                                    };
                       helper.ExecuteScalar(_cmdtext, CommandType.StoredProcedure, parameter);
                   }
               }
               result = (bool)success.Value;
           }


           return result;
       }
  1. 最後にビジネス層で

    private void FillObjects() { List Answer = new List(); Answer.Add(Convert.ToInt32(rbAnswer1.Text.Trim())); Answer.Add(Convert.ToInt32(rbAnswer2.Text.Trim())); Answer.Add(Convert.ToInt32(rbAnswer3.Text.Trim())); Answer.Add(Convert.ToInt32(rbAnswer4.Text.Trim())); Answer.Add(Convert.ToInt32(rbAnswer5.Text.Trim())); Answer.Add(Convert.ToInt32(rbAnswer6.Text.Trim())); Answer.Add(Convert.ToInt32(rbAnswer7.Text.Trim())); Answer.Add(Convert.ToInt32(rbAnswer8.Text.Trim())); Answer.Add(Convert.ToInt32(rbAnswer9.Text.Trim())); Answer.Add(Convert.ToInt32(rbAnswer10.Text.Trim())); Answer.Add(Convert.ToInt32(rbAnswer11.Text.Trim())); Answer.Add(Convert.ToInt32(rbAnswer12.Text.Trim())); 答え。Add(Convert.ToInt32(rbAnswer13.Text.Trim())); Answer.Add(Convert.ToInt32(rbAnswer14.Text.Trim())); Answer.Add(Convert.ToInt32(rbAnswer15.Text.Trim())); _DimensionQuestion.NewAnswer = 回答; }

そしてボタンクリックで

protected void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                FillObjects();


                if (InsertData.InsertNewDimAnswer(_DimensionQuestion) 
                {

                    ShowMessage("Information is saved");
                    Reset();

                }
                else
                {
                    ShowMessage("Please try again");

                }
            }

            finally
            {
                //_DimensionQuestion = null;

            }
        }
4

1 に答える 1

0

セミコロンで区切られた文字列としてデータベースに保存するだけです。

ラジオボタンを介して文字列ループを作成し、追加するとき; 次に、完全な文字列をデータベースに保存します。

次に、データを元に戻すときに、文字列を ; で分割します。配列/リストに各アイテムを入力します。

于 2012-09-19T09:24:31.933 に答える