这个是我在对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
程序集“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