You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Additional context
The resulting stack trace is as follows:
Unhandled exception. System.MissingMethodException: Cannot dynamically create an instance of type 'Options'. Reason: No parameterless constructor defined.
at System.RuntimeType.ActivatorCache..ctor(RuntimeType rt)
at System.RuntimeType.CreateInstanceOfT()
at System.Activator.CreateInstance[T]()
at CommandLine.Core.InstanceBuilder.<>c__1`1.<Build>b__1_0(Func`1 f)
at CSharpx.MaybeExtensions.MapValueOrDefault[T1,T2](Maybe`1 maybe, Func`2 func, T2 noneValue)
at CommandLine.Core.InstanceBuilder.Build[T](Maybe`1 factory, Func`3 tokenizer, IEnumerable`1 arguments, StringComparer nameComparer, Boolean ignoreValueCase, CultureInfo parsingCulture, Boolean autoHelp, Boolean autoVersion, Boolean allowMultiInstance, IEnumerable`1 nonFatalErrors)
at CommandLine.Parser.ParseArguments[T](IEnumerable`1 args)
at Program.Main(String[] args)
The text was updated successfully, but these errors were encountered:
A small clarification here: It's not the setter being init that's causing the issue.
The issue is triggered by using a setter (regardless of whether it's an init or set setter) while also using a parameterized constructor. Whether this constitutes a bug or an intentional design restriction of option classes i can't tell, because i am not involved with the project, but to me subjectively it seems to be an oversight/bug in the library's logic...
Describe the bug
In case of read-only properties in the command line options class, where a property is defined as
you will get a
MissingMethodException
when parsing the command line.To Reproduce
See this fiddle https://dotnetfiddle.net/J05g0c
Expected behavior
The exception is not thrown
Additional context
The resulting stack trace is as follows:
The text was updated successfully, but these errors were encountered: