序列化c#对象公共方法

时间:2015-11-19 11:46:39

标签: c# json

我有一个带有公共方法的C#类,如下所示。我想使用Newtownsoft在JSON中序列化这个类。问题是Json序列化只序列化公共属性和字段。我如何序列化方法?

     public class Employee
        {
            public void ExecuteSomeOperation()
            {
                //code...
            }
        }

3 个答案:

答案 0 :(得分:6)

您无法将C#方法序列化为JSON对象表示。

答案 1 :(得分:1)

您希望序列化什么? 'code'通常不是序列化的。但是,您可能意味着序列化函数的“输出”。这可能包含属性或变量,因此创建属性或变量并从此方法设置它们;比属性/变量将被序列化。

答案 2 :(得分:0)

这是二进制序列化。你已经自己说过了,你不能使用json。

我确信您将根据您的情况调整下一个代码示例:

序列化样本

Stream stream = File.Open("EmployeeInfo.osl", FileMode.Create);
BinaryFormatter bformatter = new BinaryFormatter();

Console.WriteLine("Writing Employee Information");
bformatter.Serialize(stream, mp);
stream.Close();

反序列化样本

//Open the file written above and read values from it.
stream = File.Open("EmployeeInfo.osl", FileMode.Open);
bformatter = new BinaryFormatter();

Console.WriteLine("Reading Employee Information");
mp = (Employee)bformatter.Deserialize(stream);
stream.Close();