【发布时间】:2018-02-13 13:35:52
【问题描述】:
我创建了一个客户端服务器应用程序,它目前能够以容器的形式发送消息:
[Serializable]
public class MsgContainer
{
public string TableName { get; set; }
public bool SomethingBool { get; set; }
public DataTable DataTableData { get; set; }
}
问题:根据用户的请求,我希望服务器能够发送表单
public Form requestedForm { get; set; }
这个问题(正如我在网上阅读并在我的应用程序中尝试过的那样)WinForms 不可序列化,这就是我收到以下错误的原因:
System.Runtime.Serialization.SerializationException:程序集“System.Windows.Forms,版本=4.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089”中的“类型“System.Windows.Forms.Form”未标记为可序列化.'
我的问题有什么解决方法吗?
【问题讨论】:
-
为什么要发送表单?
-
这些表单是否已在客户端应用程序中定义?
-
您要发送表格上的什么内容?发送一个Form是没有意义的,它是一个数据视图。
-
@BWA:最终结果是将表单存储为 SQL(二进制格式)
-
@Gizazas 你需要什么形式的二进制表示?为数据表示创建一个对象并将其分割并从中填写表格。
标签: c# .net winforms serialization