public static void HtmlAttributeEncode(string value, TextWriter writer)
{
if (String.IsNullOrEmpty(value))
{
return;
}
int index = 0,
last = 0,
length = value.Length;
for (; index < length; index++)
{
string replacement;
switch (value[index])
{
case '"':
{
replacement = """;
break;
}
case '&':
{
replacement = "&";
break;
}
case '<':
{
replacement = "<";
break;
}
default:
{
continue;
}
}
writer.Write(value.Substring(last, index-last));
writer.Write(replacement);
last = index+1;
}
if (last < length)
{
writer.Write(value.Substring(last));
}
}