internal void WriteItem(NameInfo itemNameInfo, NameInfo typeNameInfo, Object value)
{
itemNameInfo.Dump("WriteItem itemNameInfo");
typeNameInfo.Dump("WriteItem typeNameInfo");
attrList.Clear();
if (itemNameInfo.NItransmitTypeOnMember)
{
attrList.Put("xsi:type", TypeNameTagResolver(typeNameInfo, true));
}
String stringValue = null;
if (typeNameInfo.NIprimitiveTypeEnum == InternalPrimitiveTypeE.QName)
{
if (value != null)
{
SoapQName soapQName = (SoapQName)value;
if (soapQName.Key == null || soapQName.Key.Length == 0)
attrList.Put("xmlns", "");
else
attrList.Put("xmlns:"+soapQName.Key, soapQName.Namespace);
stringValue = soapQName.ToString();
}
}
else
stringValue = Converter.SoapToString(value, typeNameInfo.NIprimitiveTypeEnum);
NamespaceAttribute();
Write(InternalElementTypeE.Member, "item", attrList, stringValue, false, (typeNameInfo.NIprimitiveTypeEnum == InternalPrimitiveTypeE.Invalid));
}