7

I have the following VB.NET class definition:

<Serializable()> Partial Public Class Customers
End Class

Inside another file I have the same thing (with different methods and variables of course). When I compile, I get the following error:

Attribute 'SerializableAttribute' cannot be applied multiple times.

The error is pretty self explanatory. My question is though, if I just mark the one class as Serializable(), can I assume the entire class with be marked as serializable()? In other words, Do I only need the serializable() tag in 1 spot in the class?

Icemanind
  • 47,519
  • 50
  • 171
  • 296

2 Answers2

10

You only need it marked once per class so in a class with more than one 'partial' definitation, you should just remove it from all the other files. The whole 'partial' thing is just a way of visualizing your code so when you apply it once, it will be for the whole class.

JasonRShaver
  • 4,344
  • 3
  • 32
  • 39
7

Yes, you only need to put it in one of the Partial Classes:
http://msdn.microsoft.com/en-us/library/wa80x488.aspx

At compile time, attributes of partial-type definitions are merged.

Liam
  • 27,717
  • 28
  • 128
  • 190
Badaro
  • 3,460
  • 1
  • 19
  • 18