0

このシンプルなテーブルがあります。その中の1つのフィールドは、Nvarchar(max)を持つコンテンツと呼ばれます。

SQL Server Managementを使用してデータベースでそのフィールドを直接編集し、以下のテキストを追加すると、正常に保存されます。

文章:

Do you open the menu at a restaurant ever expanding multi-cultural tourist hub, Chinatown has a lot to offer to meet your culinary desires, from China and beyond.<br /></br>This tour will be the first in a series the food.

ただし、ASPXページのWebフォームを使用して上記と同じテキストをデータベースに送信しようとすると、以下のエラーが発生します。2つの<br />コードが原因であると考えられます。

潜在的に危険なRequest.Form値がクライアントから検出されました(tbTourDetails = "... ndbeyond。
このツアー...")。

これを回避して、データベースに部分的にHTMLを送信するWebフォームを作成するにはどうすればよいですか?

よろしくお茶

4

1 に答える 1

0

HTMLコードを保存しようとしているので、web.configのhttpRuntime構成セクションにrequestValidationMode="2.0"を追加する必要があります。

<httpRuntime requestValidationMode="2.0" />

保存する前にエンコードします。

String TestString = "This is a <Test String>.";
String EncodedString = Server.HtmlEncode(TestString);

そして、テキストとして表示するためにそれをデコードします。

Label1.Text = HttpUtility.HtmlDecode(dbValue);

参照: HtmlEncodeメソッド HtmlEncode、HtmlDecode

于 2012-11-29T14:06:54.953 に答える