runtime: Bring back missing protected fields from ResourceManager and ResourceSet

Proposal

We removed 4 protected fields from System.Resources types because (1) Hashtable was not in corelib at that time and (2) usage seemed low and public/protected fields are non standard. The 4 fields in System.Resources are:

ResourceManager.BaseNameField
ResourceManager.ResourceSets
ResourceSet.Reader
ResourceSet.Table

Since then (1) it has emerged from api-port analysis there is significant usage especially for the ResourceSet fields and (2) Hashtable has moved to corelib.

We should bring these back.

namespace System.Resources
{
    public class ResourceManager
    {
        protected string BaseNameField;
        protected Hashtable ResourceSets;
    }

    public class ResourceSet : IDisposable, IEnumerable
    {
        protected IResourceReader Reader;
        protected Hashtable Table;
    }
}

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 20 (19 by maintainers)

Most upvoted comments

@MarcoRossignoli we need first to agree that is what we want to do. personally, I don’t have any objection but I need to get more people to agree on that.