最近、不正な書き込み(コメント)が多いので、フィルタ機能をつけました。
1.Dottext.Web.UI.Controls.PostCommentクラス
・btnSubmit_Clickイベント内(
// コメントのフィルタ処理記述以降)
try
{
Entry currentEntry =
Cacher.GetEntryFromRequest(Context,CacheTime.Short);
Entry entry = new Entry(PostType.Comment);
if (tbComment.Text.Length > 2000)
{
throw new ApplicationException(
"2000文字を超えるコメントは受け付けられません");
}
// コメントのフィルタ処理
foreach (string _keyvalue in ConfigurationSettings.
AppSettings["CommentFilter"].ToString().Split(','))
{
string _key = _keyvalue.Split(':')[0];
string _value = _keyvalue.Split(':')[1];
string _field;
if (_key == "title")
{
_field = tbTitle.Text;
}
else
{
_field = tbUrl.Text;
}
if (_field.IndexOf(_value) > -1)
{
throw new ApplicationException("不正URL書き込み");
}
} 2.web.config
・appSettingsセクションへ以下を追加
・value属性に「フィルタ対象の項目:値」を登録して下さい
<add key="CommentFilter" value="title:This Good,
title:poker,
title:texas,
titleurl:poker,
titleurl:casino,
titleurl:pills,
titleurl:credit" />