public override void WriteBase64Text(byte[] trailBytes, int trailByteCount, byte[] base64Buffer, int base64Offset, int base64Count)
{
if (_inAttribute)
{
_attributeValue.WriteBase64Text(trailBytes, trailByteCount, base64Buffer, base64Offset, base64Count);
}
else
{
int length = trailByteCount + base64Count;
if (length > 0)
{
WriteTextNodeWithLength(XmlBinaryNodeType.Bytes8Text, length);
if (trailByteCount > 0)
{
int offset;
byte[] buffer = GetBuffer(trailByteCount, out offset);
for (int i = 0; i < trailByteCount; i++)
buffer[offset + i] = trailBytes[i];
Advance(trailByteCount);
}
if (base64Count > 0)
{
WriteBytes(base64Buffer, base64Offset, base64Count);
}
}
else
{
WriteEmptyText();
}
}
}