Skip to content

EventArgs type not Serializable #24461

Closed
Closed

Description

@AndyGerlicher

MSBuild uses EventArgs base class to derive all build events and messages (see BuildEventArgs).

As part of our effort to migrate to netstandard2.0, we need this type to be marked Serializable in order to maintain compatibility between full framework and Core versions. Ideally this needs to be included in 2.0 servicing in the VS15.6 timeframe.

@danmosemsft

Activity

  1. karelz commented on Dec 15, 2017

    @karelz
    Member
  2. danmoseley commented on Dec 15, 2017

    @danmoseley
    Contributor

    We should just do this. It's an empty base type. They are not asking for any derived types.

  3. ViktorHofer commented on Dec 15, 2017

    @ViktorHofer
    Member

    PRs are open for coreclr (src), corefx (tests) and docs. This issue should be closed after the PR into the servicing branch is merged.

  4. jkotas commented on Dec 15, 2017

    @jkotas
    Member

    @AndyGerlicher Where is msbuild going to use binary serialization for this in .NET Core?

  5. AndyGerlicher commented on Dec 15, 2017

    @AndyGerlicher
    Author

    We use binary serialization for many things, in particular cache files and IPC for multi-proc builds. The type I linked (BuildEventArgs) is the base class for all our build messages/events which derives from BuildEvent (and is not ISerializable). And customers can (and do) create custom types that derive from our build event types.

  6. danmoseley commented on Jun 28, 2018

    @danmoseley
    Contributor

    We allow serialization of EventArgs itself. No further changes planned.

  7. transferred this issue fromdotnet/corefxon Jan 31, 2020
  8. added this to the 2.0.x milestone on Jan 31, 2020
  9. ghost locked as resolved and limited conversation to collaborators on Dec 19, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-System.RuntimeenhancementProduct code improvement that does NOT require public API changes/additions

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions