Made RunCodeAnalysis false.
Saved the general example.
Changed code format to clarify, but not behavior.
* The positional and named parameter for constructor injection should consider whether its type is matched with parameter value.
Revert "Made RunCodeAnalysis false."

This reverts commit 58712c670d91380edc40bcd76fbe0ba43b1a67a1.
Saved the general example.
Updated version to v3.1.1.
Cleanup code using resharper.
Merge branch 'master' into v4.x