protected override List <MemberInfo> GetSerializableMembers(Type type) { if (TypeCacheUtils.IsAnStructType(type) || (type == typeof(CurrentState)) || (type == typeof(ViewsState)) || (type == typeof(ClientCommand))) { return(base.GetSerializableMembers(type)); } List <MemberInfo> props = new List <MemberInfo>(); foreach (var propEx in TypePropertiesCache.GetArrayPropertiesOrderedByIndex(type)) { if (propEx != null && !propEx.IsExcludedPropertyForSerialization(serverSide, skipUniqueId, skipObjectProperties)) { props.Add(propEx.prop); } } return(props); }