public static void Marshal(byte[] value, Stream stream)
 {
     Int32Marshaler.Marshal(value.Length, stream);
     if (value.Length > 0)
     {
         stream.Write(value, 0, value.Length);
     }
 }
示例#2
0
        public void MarshalObject(object value, Stream stream)
        {
            Array array = (Array)value;

            Int32Marshaler.Marshal(array.Length, stream);
            foreach (object element in array)
            {
                _elementMarshaler.MarshalObject(element, stream);
            }
        }
示例#3
0
        public void MarshalObject(object value, Stream stream)
        {
            List <UniqueSettings> settings = new List <UniqueSettings>(((IEnumerable)value).Cast <UniqueSettings>());

            Int32Marshaler.Marshal(settings.Count(), stream);
            foreach (UniqueSettings element in settings)
            {
                _elementMarshaler.MarshalObject(element, stream);
            }
        }
示例#4
0
        public void MarshalObject(object value, Stream stream)
        {
            IList list = (IList)value;

            Int32Marshaler.Marshal(list.Count, stream);
            foreach (object element in list)
            {
                MarshalingManager.Marshal(element, stream);
            }
        }
 public static void Marshal(StringDictionary value, Stream stream)
 {
     Int32Marshaler.Marshal(value.Count, stream);
     foreach (DictionaryEntry entry in value)
     {
         string entryKey   = entry.Key.ToString();
         string entryValue = entry.Value == null ? string.Empty : entry.Value.ToString();
         StringMarshaler.Marshal(entryKey, stream);
         StringMarshaler.Marshal(entryValue, stream);
     }
 }
示例#6
0
        public void MarshalObject(object value, Stream stream)
        {
            DynamicSettings settings = (DynamicSettings)value;

            Int32Marshaler.Marshal(settings.Count(), stream);
            foreach (KeyValuePair <Guid, DynamicSettingsValue> pair in settings)
            {
                GuidMarshaler.Marshal(pair.Key, stream);
                ByteArrayMarshaler.Marshal(pair.Value.Serialize(), stream);
            }
        }
示例#7
0
 public static void Marshal(string value, Stream stream)
 {
     byte[] data = Encoding.Unicode.GetBytes(value);
     Int32Marshaler.Marshal(data.Length, stream);
     stream.Write(data, 0, data.Length);
 }