本文整理汇总了C#中AMFWriter.WriteData方法的典型用法代码示例。如果您正苦于以下问题:C# AMFWriter.WriteData方法的具体用法?C# AMFWriter.WriteData怎么用?C# AMFWriter.WriteData使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AMFWriter
的用法示例。
在下文中一共展示了AMFWriter.WriteData方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: WriteData
public void WriteData(AMFWriter writer, object data) {
if (data is INullable) {
if ((data as INullable).IsNull) {
writer.WriteNull();
return;
}
}
if (data is SqlByte) {
writer.WriteData(ObjectEncoding.AMF0, ((SqlByte)data).Value);
return;
}
if (data is SqlInt16) {
writer.WriteData(ObjectEncoding.AMF0, ((SqlInt16)data).Value);
return;
}
if (data is SqlInt32) {
writer.WriteData(ObjectEncoding.AMF0, ((SqlInt32)data).Value);
return;
}
if (data is SqlInt64) {
writer.WriteData(ObjectEncoding.AMF0, ((SqlInt64)data).Value);
return;
}
if (data is SqlSingle) {
writer.WriteData(ObjectEncoding.AMF0, ((SqlSingle)data).Value);
return;
}
if (data is SqlDouble) {
writer.WriteData(ObjectEncoding.AMF0, ((SqlDouble)data).Value);
return;
}
if (data is SqlDecimal) {
writer.WriteData(ObjectEncoding.AMF0, ((SqlDecimal)data).Value);
return;
}
if (data is SqlMoney) {
writer.WriteData(ObjectEncoding.AMF0, ((SqlMoney)data).Value);
return;
}
if (data is SqlDateTime) {
writer.WriteData(ObjectEncoding.AMF0, ((SqlDateTime)data).Value);
return;
}
if (data is SqlString) {
writer.WriteString(((SqlString)data).Value);
return;
}
if (data is SqlGuid) {
writer.WriteData(ObjectEncoding.AMF0, ((SqlGuid)data).Value.ToString("D"));
return;
}
if (data is SqlBoolean) {
writer.WriteBoolean(((SqlBoolean)data).Value);
return;
}
string msg = string.Format("Could not find serializer for type {0}", data.GetType().FullName);
if (_log.IsErrorEnabled)
_log.Error(msg);
throw new FluorineException(msg);
}
示例2: Serialize
/// <summary>
/// Writes the object to the specified output stream.
/// </summary>
/// <param name="writer">Writer to write to.</param>
public void Serialize(AMFWriter writer)
{
#if !(NET_1_1)
Dictionary<string, object> persistentAttributes = new Dictionary<string, object>();
#else
Hashtable persistentAttributes = new Hashtable();
#endif
foreach (string attribute in this.GetAttributeNames())
{
if (attribute.StartsWith(Constants.TransientPrefix))
continue;
persistentAttributes.Add(attribute, this[attribute]);
}
writer.WriteData(ObjectEncoding.AMF0, persistentAttributes);
}
示例3: InjectMetaCue
/// <summary>
/// Injects metadata (Cue Points) into a tag.
/// </summary>
/// <param name="meta">Metadata.</param>
/// <param name="tag">Tag.</param>
/// <returns></returns>
private ITag InjectMetaCue(MetaCue meta, ITag tag) {
MemoryStream ms = new MemoryStream();
AMFWriter writer = new AMFWriter(ms);
writer.WriteData(ObjectEncoding.AMF0, "onCuePoint");
writer.WriteData(ObjectEncoding.AMF0, meta);
byte[] buffer = ms.ToArray();
return new Tag(IOConstants.TYPE_METADATA, GetTimeInMilliseconds(meta), buffer.Length, buffer, tag.PreviousTagSize);
}
示例4: InjectMetaData
/// <summary>
/// Injects metadata (other than Cue points) into a tag.
/// </summary>
/// <param name="meta">Metadata.</param>
/// <param name="tag">Tag.</param>
/// <returns></returns>
private ITag InjectMetaData(MetaData meta, ITag tag) {
MemoryStream ms = new MemoryStream();
AMFWriter writer = new AMFWriter(ms);
writer.WriteData(ObjectEncoding.AMF0, "onMetaData");
writer.WriteData(ObjectEncoding.AMF0, meta);
byte[] buffer = ms.ToArray();
return new Tag(IOConstants.TYPE_METADATA, 0, buffer.Length, buffer, tag.PreviousTagSize);
}
示例5: WriteData
public void WriteData(AMFWriter writer, object data)
{
writer.WriteData(ObjectEncoding.AMF0, (data as CacheableObject).Object);
}
示例6: Serialize
public void Serialize(AMFWriter writer)
{
writer.WriteString(this.Name);
writer.WriteString(this.Path);
writer.WriteData(ObjectEncoding.AMF0, _attributes);
}
示例7: WriteBodyData
/// <summary>
/// This method supports the Fluorine infrastructure and is not intended to be used directly from your code.
/// </summary>
protected virtual void WriteBodyData(ObjectEncoding objectEncoding, AMFWriter writer)
{
object content = this.Content;
writer.WriteData(objectEncoding, content);
}
示例8: WriteBodyData
protected override void WriteBodyData(ObjectEncoding objectEncoding, AMFWriter writer)
{
writer.WriteData(objectEncoding, this.Content);
}