2016-04-10 13 views
1

myObjectをTCP/IPで送信すると問題が発生します。myObjectをTCP/IPで送信

マイArchMap

public class ArchMap 
{ 
    public string DetalCode { get; set; } 
    public List<Arch> Archs { get; set; } 
} 

アーチ

public class Arch 
{ 
    public string ModulName { get; set; } 
    public string PartName1 { get; set; } 
    [...] 
} 

私がれるtcpClientに、このリストを送りたいが、私は私のリストは、[]のバイトに変換する方法がわかりません。

私は

var bf = new BinaryFormatter(); 
    var ms = new MemoryStream(); 
    bf.Serialize(ms, xarchList); 

を試みるが、私はエラーを取得:

Additional information: Typ 'Arch_Sender.Model.ArchMap' in Assembly 'ArchSender.Model, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' is not marked as serializable

答えて

1

このようSerializable属性を使用することを検討してください:

ArchMap

using using System.Runtime.Serialization; 

[Serializable] 
public class ArchMap 
{ 
    public string DetalCode { get; set; } 
    public List<Arch> Archs { get; set; } 
} 

アーチ

using System.Runtime.Serialization; 

[Serializable] 
public class Arch 
{ 
    public string ModulName { get; set; } 
    public string PartName1 { get; set; } 
    [...] 
} 

さらに詳しい情報:https://msdn.microsoft.com/en-us/library/ms973893.aspx

関連する問題