本文整理汇总了C#中Message.SetDecimal方法的典型用法代码示例。如果您正苦于以下问题:C# Message.SetDecimal方法的具体用法?C# Message.SetDecimal怎么用?C# Message.SetDecimal使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Message
的用法示例。
在下文中一共展示了Message.SetDecimal方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TestDictionaryNotInherited
public void TestDictionaryNotInherited()
{
const string templateDef = "<template name='OptDeltaDec' id='58' dictionary='template'>" +
" <string name='desc'/>" +
" <decimal id='1' presence='optional' name='Line1'>" +
" <exponent><copy/></exponent>" +
" <mantissa><copy/></mantissa>" +
" </decimal>" +
" <decimal id='1' presence='optional' name='Line2'>" +
" <exponent><copy/></exponent>" +
" <mantissa><copy/></mantissa>" +
" </decimal> " +
" <decimal id='1' presence='optional' name='Line3'>" +
" <exponent><copy/></exponent> " +
" <mantissa><copy/></mantissa>" +
" </decimal>" +
"</template>";
MessageTemplate template = Template(templateDef);
var m = new Message(template);
m.SetString("desc", "prev");
m.SetDecimal("Line2", 9427.61);
m.SetDecimal("Line3", 9427.6);
byte[] bytes = Encoder(template).Encode(m);
Message m2 = Decoder(template, bytes).ReadMessage();
Assert.AreEqual(m, m2);
}
示例2: TestEncodeMessageWithAllFieldTypes
public void TestEncodeMessageWithAllFieldTypes()
{
var template = new MessageTemplate(
"",
new Field[]
{
new Scalar("1", FastType.String, Operator.Copy, ScalarValue.Undefined, false),
new Scalar("2", FastType.ByteVector, Operator.Copy, ScalarValue.Undefined, false),
new Scalar("3", FastType.Decimal, Operator.Copy, ScalarValue.Undefined, false),
new Scalar("4", FastType.I32, Operator.Copy, ScalarValue.Undefined, false),
new Scalar("5", FastType.String, Operator.Copy, ScalarValue.Undefined, false),
new Scalar("6", FastType.U32, Operator.Copy, ScalarValue.Undefined, false),
});
var context = new Context();
context.RegisterTemplate(113, template);
var message = new Message(template);
message.SetString(1, "H");
message.SetByteVector(2, new[] {(byte) 0xFF});
message.SetDecimal(3, 1.201);
message.SetInteger(4, -1);
message.SetString(5, "abc");
message.SetInteger(6, 2);
// --PMAP-- --TID--- ---#1--- -------#2-------- ------------#3------------ ---#4--- ------------#5------------ ---#6---
const string msgstr =
"11111111 11110001 11001000 10000001 11111111 11111101 00001001 10110001 11111111 01100001 01100010 11100011 10000010";
AssertEquals(msgstr, new FastEncoder(context).Encode(message));
}
示例3: TestConversions
public void TestConversions()
{
MessageTemplate template = Template(
"<template>" +
" <string name='string'/>" +
" <uInt32 name='uint'/>" +
" <int8 name='byte'/>" +
" <int16 name='short'/>" +
" <int64 name='long'/>" +
" <byteVector name='bytevector'/>" +
" <decimal name='decimal'/>" +
"</template>");
var message = new Message(template);
message.SetByteVector("string", Byte("7f001a"));
message.SetDecimal("uint", 150.0);
message.SetString("byte", "4");
message.SetString("short", "-5");
message.SetString("long", "1000000000000000000");
message.SetString("bytevector", "abcd");
message.SetString("decimal", "2.3");
FastEncoder encoder = Encoder(template);
byte[] encoding = encoder.Encode(message);
FastDecoder decoder = Decoder(template, encoding);
Message decodedMessage = decoder.ReadMessage();
Assert.AreEqual(150, decodedMessage.GetInt("uint"));
Assert.AreEqual(150, decodedMessage.GetShort("uint"));
Assert.AreEqual(4, decodedMessage.GetByte("byte"));
Assert.AreEqual(-5, decodedMessage.GetShort("short"));
Assert.AreEqual(1000000000000000000L, decodedMessage.GetLong("long"));
}
示例4: TestDecodeMessageWithAllFieldTypes
public void TestDecodeMessageWithAllFieldTypes()
{
// --PMAP-- --TID--- ---#1--- -------#2-------- ------------#3------------ ---#4--- ------------#5------------ ---#6---
const string msgstr =
"11111111 11110001 11001000 10000001 11111111 11111101 00001001 10110001 11111111 01100001 01100010 11100011 10000010";
Stream input = ByteUtil.CreateByteStream(msgstr);
var template = new MessageTemplate(
"",
new Field[]
{
new Scalar("1", FastType.Ascii, Operator.Copy, ScalarValue.Undefined, false),
new Scalar("2", FastType.ByteVector, Operator.Copy, ScalarValue.Undefined, false),
new Scalar("3", FastType.Decimal, Operator.Copy, ScalarValue.Undefined, false),
new Scalar("4", FastType.I32, Operator.Copy, ScalarValue.Undefined, false),
new Scalar("5", FastType.Ascii, Operator.Copy, ScalarValue.Undefined, false),
new Scalar("6", FastType.U32, Operator.Copy, ScalarValue.Undefined, false),
});
var context = new Context();
context.RegisterTemplate(113, template);
GroupValue message = new Message(template);
message.SetString(1, "H");
message.SetByteVector(2, new[] {(byte) 0xFF});
message.SetDecimal(3, 1.201);
message.SetInteger(4, -1);
message.SetString(5, "abc");
message.SetInteger(6, 2);
Assert.AreEqual(message, new FastDecoder(context, input).ReadMessage());
}
示例5: SetUp
protected void SetUp()
{
_nameTemplate = Template("<template>" +
" <string name='name'/>" +
"</template>");
_template = Template("<template>" +
" <uInt32 name='quantity'/>" +
" <templateRef/>" +
" <decimal name='price'/>" +
"</template>");
_message = new Message(_template);
_message.SetInteger(1, 15);
_message.SetDecimal(3, 102.0);
_name = new Message(_nameTemplate);
_name.SetString(1, "IBM");
_message.SetFieldValue(2, _name);
_context = new Context();
_context.RegisterTemplate(1, _template);
_context.RegisterTemplate(2, _nameTemplate);
}
示例6: TestMantissaIsntPresentWhenExponentIsNull
public void TestMantissaIsntPresentWhenExponentIsNull()
{
const string templateXml = "<template name='SampleTemplate'>" +
" <decimal name='bid' presence='optional'>" +
" <mantissa><copy/></mantissa>" +
" <exponent><copy value='-2'/></exponent>" +
" </decimal>" +
"</template>";
MessageTemplate template = Template(templateXml);
FastEncoder encoder = Encoder(template);
var message = new Message(template);
message.SetDecimal(1, 0.63);
AssertEquals("11010000 10000001 10111111", encoder.Encode(message));
message = new Message(template);
AssertEquals("10100000 10000000", encoder.Encode(message));
}
示例7: Quote
public static Message Quote(double bid, double ask)
{
var quote = new Message(QuoteTemplate);
quote.SetDecimal(1, bid);
quote.SetDecimal(2, ask);
return quote;
}