Я встроил AjaxToolKit Gravatar в цикл foreach комментария в блоге. Адрес электронной почты Gravatar не представляет фактическое значение адреса электронной почты, а представляет собой буквальную строку (синим шрифтом) CommentEmail. Я пробовал множество вариантов синтаксиса, но пока безуспешно. Вот код в его нынешнем виде:
<div class="comments">
<div>
<h3>Comments</h3>
</div>
<% foreach (System.Data.DataRow myCRow in myCommentDataTable.Rows)
{
string CommentID = myCRow[0].ToString();
string BlogParentID = myCRow[1].ToString();
string Commenter = myCRow[2].ToString();
string CommenterEmail = myCRow[3].ToString();
string Comment = myCRow[4].ToString();
string CommentDate = myCRow[5].ToString();
if (BlogParentID == Id)
{
Response.Write("<div class='commentdate pull-right'>" + CommentDate + "</div>");
Response.Write("<div class='commenter'>" + Commenter + "</div><br />");
Response.Write("<p>" + Comment + "</p>");
%><Ajax:Gravatar runat='server' ID='GravatarImage' Email='<%= CommenterEmail %> ' DefaultImageBehavior='MysteryMan' /><br /><br /><%
}
}%>
</div>
CommenterEmail в самой последней строке — это оскорбительный текст. Он отображается как строка с синим шрифтом, а не как переменная с черным шрифтом. Таким образом, он оценивается как недействительный адрес электронной почты и показывает значок «таинственный человек» по умолчанию. Если я жестко запрограммирую свой адрес электронной почты, он будет работать правильно, отображая мой Gravatar для всех пользователей.
Каков правильный синтаксис для встраивания этого значения электронной почты в AjaxToolKit: Gravatar?