Skip to content

[release/7.0] Fix Binding with IList<>, ICollection and IDictionary<,> implementer types - #78118

Merged
carlossanlop merged 5 commits into
release/7.0from
backport/pr-77582-to-release/7.0
Nov 11, 2022
Merged

[release/7.0] Fix Binding with IList<>, ICollection and IDictionary<,> implementer types#78118
carlossanlop merged 5 commits into
release/7.0from
backport/pr-77582-to-release/7.0

Conversation

@github-actions

@github-actionsgithub-actionsBot commented Nov 9, 2022

Copy link
Copy Markdown
Contributor

Backport of #77857 and #77582 to release/7.0

/cc @tarekgh

Customer Impact

Customers using configurations which bind to the types IList<T> and ICollection<T> and try to add items to the produced collection objects will get exception telling Unhandled exception. System.NotSupportedException: Collection was of a fixed size.. Also, binding using types implement IDictionary<,> interface (but not a Dictionary<,>) will not work as expected. It will end up not adding the configuration data to that object. These issues are reported by R9 in the issue #77725 and IDictionary issue reported by other user in the issue #77246

Testing

I spent enough time testing these cases manually and ensuring we are not missing any related cases. Also, I have added more tests to validate such fix and to ensure will not run into similar regressions in the future.

Risk

Medium, although there is some risk when touching the configuration code, but I spent enough time testing the change to mitigate the risk. The change is good enough to proceed with.

@tarekghtarekgh changed the title [release/7.0] Fix Binding with IDictionary<,> implementer types[release/7.0] Fix Binding with IList<>, ICollection and IDictionary<,> implementer typesNov 9, 2022
@ghost

ghost commented Nov 9, 2022

Copy link
Copy Markdown

Tagging subscribers to this area: @dotnet/area-extensions-configuration
See info in area-owners.md if you want to be subscribed.

Issue Details

Backport of #77582 to release/7.0

/cc @tarekgh

Customer Impact

Testing

Risk

IMPORTANT: Is this backport for a servicing release? If so and this change touches code that ships in a NuGet package, please make certain that you have added any necessary package authoring and gotten it explicitly reviewed.

Author:github-actions[bot]
Assignees:-
Labels:

area-Extensions-Configuration

Milestone:-

@tarekghtarekgh added the Servicing-consider Issue for next servicing release review label Nov 9, 2022
@tarekgh
tarekgh requested a review from eerhardtNovember 9, 2022 19:26
@ericstjericstj added Servicing-approved Approved for servicing release and removed Servicing-consider Issue for next servicing release review labels Nov 10, 2022
@ericstjericstj added this to the 7.0.1 milestone Nov 10, 2022
@ericstj

Copy link
Copy Markdown
Member

Approved over email

@tarekghtarekgh self-assigned this Nov 10, 2022
@carlossanlop

Copy link
Copy Markdown
Contributor

CI failure is known and unrelated: #77988

OOB package authoring changes look good. Approved by Tactics. Signed off by area owner. Ready to merge. :shipit:

Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@ericstj@carlossanlop@eerhardt@tarekgh