I am trying to write a class in C# with [Serializable()] mark. Then I noticed that there are some situations the NonSerializedAttribute mark is needed.