VB.net序列化问题
这个是我在对TV3D模型进行序列化时发生的错误。哪位大牛遇到过,请帮助解决一下。程序集“mscorlib,Version=4.0.0.0,Culture=neutral, PublicKeyToken=b77a5c561934e089”中的类型System._ComObject未标记为可序列化
模型结构声明
程序代码:
Module ModuleTV3DModel <Serializable()> Public Structure TV3D_Model Public ModelName As String 'TV3D构件对象(数组) Public MB_L() As Member_L Public MB_C() As Member_C Public MB_H() As Member_H Public MB_T() As Member_T Public MB_Tube() As Member_Tube Public MB_Shell() As ShellMember 'TV3D板壳对象(数组) Public MB_Joints() As Member_Joint 'TV3D节点对象(数组) End Structure End Module
子结构声明,都类似所以就给了一个
程序代码:
Module ModuleTube <Serializable()> Public Structure Member_Tube Dim M_Name As String '构件名称 Dim SectName As String '构件截面名称 …… '下面还有这个结构的一些函数
主窗口代码,打开模型按钮还做(目前是从数据库打开,没有序列化),保存按钮出问题
程序代码:
Shared myModel(0) As TV3D_Model …… Private Sub ToolStripButtonSaveModel_Click(sender As Object, e As EventArgs) Handles ToolStripButtonSaveModel.Click Dim fStream As New FileStream(Application.StartupPath & "\1.smd", FileMode.Create) Dim bf As New BinaryFormatter bf.Serialize(fStream, myModel) fStream.Close() End Sub