当前位置: 首页>>代码示例>>C#>>正文


C# SerializationReader.ReadOptimizedBitVector32方法代码示例

本文整理汇总了C#中SerializationReader.ReadOptimizedBitVector32方法的典型用法代码示例。如果您正苦于以下问题:C# SerializationReader.ReadOptimizedBitVector32方法的具体用法?C# SerializationReader.ReadOptimizedBitVector32怎么用?C# SerializationReader.ReadOptimizedBitVector32使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SerializationReader的用法示例。


在下文中一共展示了SerializationReader.ReadOptimizedBitVector32方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: DeserializeStateBag

        public static StateBag DeserializeStateBag(SerializationReader reader)
        {
            var flags = reader.ReadOptimizedBitVector32();
            var stateBag = new StateBag(flags[StateBagIsIgnoreCase]);

            if (flags[StateBagHasDirtyEntries])
            {
                var count = reader.ReadOptimizedInt32();

                for(var i = 0; i < count; i++)
                {
                    var key = reader.ReadOptimizedString();
                    var value = reader.ReadObject();

            // ReSharper disable PossibleNullReferenceException
                    stateBag.Add(key, value).IsDirty = true;
            // ReSharper restore PossibleNullReferenceException
                }
            }

            if (flags[StateBagHasCleanEntries])
            {
                var count = reader.ReadOptimizedInt32();

                for(var i = 0; i < count; i++)
                {
                    var key = reader.ReadOptimizedString();
                    var value = reader.ReadObject();

                    stateBag.Add(key, value);
                }
            }
            return stateBag;
        }
开发者ID:bbqchickenrobot,项目名称:FastSerializer,代码行数:34,代码来源:WebFastSerializationHelper.cs

示例2: DeserializeColor

        public static Color DeserializeColor(SerializationReader reader)
        {
            var flags = reader.ReadOptimizedBitVector32();

            if (flags[ColorIsKnown]) return Color.FromKnownColor((KnownColor) reader.ReadOptimizedInt32());
            if (flags[ColorHasName]) return Color.FromName(reader.ReadOptimizedString());
            if (!flags[ColorHasValue]) return Color.Empty;

            var red = flags[ColorHasRed] ? reader.ReadByte() : (byte) 0;
            var green = flags[ColorHasGreen] ? reader.ReadByte() : (byte) 0;
            var blue = flags[ColorHasBlue] ? reader.ReadByte() : (byte) 0;
            var alpha = flags[ColorHasAlpha] ? reader.ReadByte() : (byte) 0;

            return Color.FromArgb(alpha, red, green, blue);
        }
开发者ID:bbqchickenrobot,项目名称:FastSerializer,代码行数:15,代码来源:DrawingFastSerializationHelper.cs

示例3: DeserializeUnit

        public static Unit DeserializeUnit(SerializationReader reader)
        {
            var state = reader.ReadOptimizedBitVector32();

            var unitType = state[UnitType];

            if (unitType == 0) return Unit.Empty;
            if (state[UnitIsDoubleValue]) return new Unit(reader.ReadDouble(), (UnitType) unitType);
            if (state[UnitIsZeroValue] == 1) return new Unit(0, (UnitType) unitType);

            var integerValue = state[UnitIsOptimizedValue] == 1 ? reader.ReadOptimizedInt32() : reader.ReadInt16();
            if (state[UnitIsNegativeValue] == 1) integerValue = -integerValue - 1;

            return new Unit(integerValue, (UnitType) unitType);
        }
开发者ID:bbqchickenrobot,项目名称:FastSerializer,代码行数:15,代码来源:WebFastSerializationHelper.cs

示例4: DeserializeStateBag

		public static StateBag DeserializeStateBag(SerializationReader reader)
		{
			BitVector32 flags = reader.ReadOptimizedBitVector32();
			StateBag stateBag = new StateBag(flags[StateBagIsIgnoreCase]);

			if (flags[StateBagHasDirtyEntries])
			{
				int count = reader.ReadOptimizedInt32();
				for(int i = 0; i < count; i++)
				{
					string key = reader.ReadOptimizedString();
					object value = reader.ReadObject();
					stateBag.Add(key, value).IsDirty = true;
				}
			}

			if (flags[StateBagHasCleanEntries]) 
			{
				int count = reader.ReadOptimizedInt32();
				for(int i = 0; i < count; i++)
				{
					string key = reader.ReadOptimizedString();
					object value = reader.ReadObject();
					stateBag.Add(key, value);
				}
			}
			return stateBag;
		}
开发者ID:elementar,项目名称:Suprifattus.Util,代码行数:28,代码来源:WebFastSerializationHelper.cs

示例5: DeserializeUnit

		public static Unit DeserializeUnit(SerializationReader reader)
		{
			BitVector32 state = reader.ReadOptimizedBitVector32();

			int unitType = state[UnitType];

			if(unitType == 0)
				return System.Web.UI.WebControls.Unit.Empty;
			else if(state[UnitIsDoubleValue])
				return new Unit(reader.ReadDouble(), (UnitType) unitType);
			else if(state[UnitIsZeroValue] == 1)
				return new Unit(0, (UnitType) unitType);
			else
			{
				int integerValue = state[UnitIsOptimizedValue] == 1 ? reader.ReadOptimizedInt32() : reader.ReadInt16();
				if(state[UnitIsNegativeValue] == 1) integerValue = -integerValue - 1;
				return new Unit(integerValue, (UnitType) unitType);
			}
		}
开发者ID:elementar,项目名称:Suprifattus.Util,代码行数:19,代码来源:WebFastSerializationHelper.cs

示例6: DeserializeDataSet

            public DataSet DeserializeDataSet(DataSet dataSet, byte[] serializedData)
            {
                this.dataSet = dataSet;
                reader = new SerializationReader(serializedData);

                dataSet.EnforceConstraints = false;

                BitVector32 flags = reader.ReadOptimizedBitVector32();

                if (flags[DataSetHasName]) dataSet.DataSetName = reader.ReadOptimizedString();

                dataSet.Locale = new CultureInfo(reader.ReadOptimizedInt32());
                dataSet.CaseSensitive = flags[DataSetIsCaseSensitive];

                if (flags[DataSetHasNamespace]) dataSet.Namespace = reader.ReadOptimizedString();

                if (flags[DataSetHasPrefix]) dataSet.Prefix = reader.ReadOptimizedString();

                if (flags[DataSetHasTables]) deserializeTables();
                if (flags[DataSetHasForeignKeyConstraints]) deserializeForeignKeyConstraints();

                if (flags[DataSetHasRelationships]) deserializeRelationships();
                if (flags[DataSetHasExtendedProperties]) deserializeExtendedProperties(dataSet.ExtendedProperties);

                dataSet.EnforceConstraints = flags[DataSetAreConstraintsEnabled];

                throwIfRemainingBytes();
                return dataSet;
            }
开发者ID:randomyed,项目名称:SobekCM-Web-Application,代码行数:29,代码来源:AdoNetHelper.cs

示例7: DeserializeOrder

        public static MarketOrder DeserializeOrder(SerializationReader reader)
        {
            var deal = new MarketOrder
            {
                ID = reader.ReadInt32(),
                AccountID = reader.ReadInt32(),
                Comment = reader.ReadString(),
                ExitReason = (PositionExitReason)reader.ReadInt16(),
                ExpertComment = reader.ReadString(),
                PriceEnter = reader.ReadSingle(),
                ResultDepo = reader.ReadSingle(),
                ResultPoints = reader.ReadSingle(),
                Side = reader.ReadSByte(),
                State = (PositionState) reader.ReadInt16(),
                Symbol = reader.ReadString(),
                TimeEnter = reader.ReadDateTime(),
                Trailing = reader.ReadString(),
                Volume = reader.ReadInt32(),
                VolumeInDepoCurrency = reader.ReadSingle()
            };

            // nullable values
            var flags = reader.ReadOptimizedBitVector32();

            if (flags[magicIsValued])
                deal.Magic = reader.ReadInt32();

            if (flags[pendingOrderIdIsValued])
                deal.PendingOrderID = reader.ReadInt32();

            if (flags[priceBestIsValued])
                deal.PriceBest = reader.ReadSingle();

            if (flags[priceExitIsValued])
                deal.PriceExit = reader.ReadSingle();

            if (flags[priceWorstIsValued])
                deal.PriceWorst = reader.ReadSingle();

            if (flags[stopLossIsValued])
                deal.StopLoss = reader.ReadSingle();

            if (flags[swapIsValued])
                deal.Swap = reader.ReadSingle();

            if (flags[takeProfitIsValued])
                deal.TakeProfit = reader.ReadSingle();

            if (flags[timeExitIsValued])
                deal.TimeExit = reader.ReadDateTime();

            return deal;
        }
开发者ID:johnmensen,项目名称:TradeSharp,代码行数:53,代码来源:MarketOrderSerializer.cs


注:本文中的SerializationReader.ReadOptimizedBitVector32方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。