みなさん、こんにちは。mvc4を使用して別のアプリケーションの設定ページを作成しています。設定ページ:
1.ユーザーが何でも入力できる2つのテキスト領域が含まれています。
2.ユーザーが送信ボタンをクリックした場合に入力した後、ユーザーが書き込んだテキストはSQLデータベースに保存されます。
3.メインアプリケーションはデータベースからそのデータを読み取り、表示します。
これが私のそれぞれのコードです:
モデル:
public string PartnerInfo1 { get; set; }
public string PartnerInfo2 { get; set; }
コントローラ:
[HttpPost]
public ActionResult Index(AddDetailModel model)
{
pinfo1 = model.PartnerInfo1;
pinfo2 = model.PartnerInfo2;
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Sample"].ConnectionString);
con.Open();
SqlCommand cmd = new SqlCommand("update dbo.Partner_Design set PartnerInfo1='" + pinfo1 + "',PartnerInfo2='" + pinfo2 + "' where [PartnerID]='cs'", con);
cmd.ExecuteNonQuery();
return RedirectToAction("Index");
}
とビューで:
@Html.TextAreaFor(m => m.PartnerInfo1)
@Html.TextAreaFor(m => m.PartnerInfo2)
データベースでは、対応するテーブルに2つの列PartnerInfo1、PartnerInfo2が含まれ 、それらのデータ型はnvarchar(max)です。
私の問題は、テキスト領域にアポストロフィを入力するとエラーが発生することです。たとえば、「world's」と入力すると、送信ボタンをクリックするとエラーが発生します。
これはエラーです:
Incorrect syntax near 's'.
Unclosed quotation mark after the character string ''.
これを避けるために私ができることを提案してください。どんな助けもいただければ幸いです。