コード例 #1
0
        internal void ToBytes(SlpWriter writer)
        {
            StringBuilder sb = new StringBuilder();

            foreach (KeyValuePair <string, string> item in _InnerCollection)
            {
                if (sb.Length > 0)
                {
                    sb.Append(",");
                }

                sb.Append("(");
                sb.Append(writer.Escape(item.Key, Constants.ATTRIBUTETAGRESERVED));
                if (!string.IsNullOrEmpty(item.Value))
                {
                    sb.Append("=");
                    if (item.Value.StartsWith("\\FF", StringComparison.InvariantCultureIgnoreCase))
                    {
                        sb.Append(item.Value);
                    }
                    else
                    {
                        sb.Append(writer.Escape(item.Value, Constants.ATTRIBUTEVALUERESERVED));
                    }
                }
                sb.Append(")");
            }

            writer.WriteRaw(sb.ToString());
        }