Solved

C# Serialization and Events

Posted on 2009-07-15
2
979 Views
Last Modified: 2013-12-17
I have a project that raises some events. However, I get a serialization error when I run my application from an external test project.

I have searched for an answer on how to get .NET to not serialize my events and tried the [field:NonSerialized] attribute. However, this still does not work and .NET gives me a warning saying that the field keyword is not valid in this location.

How can I get my events in this class to not be serialized because as of right now, I cannot use this class in my application because when I handle the events from my windows form, I get an error telling me that System.Windows.Forms.Form is not marked as serializable.

Does anyone know how to resolve this issue?

Here is my code:

//[field:NonSerialized] gives me a warning -- 'field' is not valid attribute location for this declaration. Valid attribute locations for this declaration are 'type, return'. All Attributes in this block will be ignored.

public delegate void Delegate_EventHandler_Load(object EventRaiser, TWDataLoadEventArgs EventArgs); 

 

//[field:NonSerialized] gives me an error -- 'field' is not a valid attribute for this declaration. Valid attribute locations for this declaration are 'event'. All attributes in this block will be ignored.

public event Delegate_EventHandler_Load OnLoad

{

    add

     {

         lock (ThreadLock_Event_Load)

         {

             if (m_EventHandlerListObj != null)

             {

                 m_EventHandlerListObj.AddHandler(ThreadLock_Event_Connect, value);

             }

         }

   remove   

   {

        if (m_EventHandlerListObj != null)

       {

           m_EventHandlerListObj.RemoveHandler(ThreadLock_Event_ErrorRaised, value);

       }

  }

}

Open in new window

0
Comment
Question by:soulaco
2 Comments
 
LVL 11

Expert Comment

by:vo1d
ID: 24869614
do you mean the serialization by the designer?
0
 
LVL 23

Accepted Solution

by:
Jens Fiederer earned 500 total points
ID: 24869636
0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
This article shows how to deploy dynamic backgrounds to computers depending on the aspect ratio of display
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…
Delivering innovative fully-managed cloud services for mission-critical applications requires expertise in multiple areas plus vision and commitment. Meet a few of the people behind the quality services of Concerto.

932 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now