Ruleset-Problem - Fehlermeldung beim kompilieren

21. April 2020 09:41

Hallo allerseits,

beim kompilieren einer Extension bekomme ich ab un zu die folgende Meldung:

Code:
"resource": "/h:/Dynamics365/AlProjekte/bero/app.json",
   "owner": "_generated_diagnostic_collection_name_#0",
   "code": "AD0001",
   "severity": 4,
   "message": "Analyzer 'Microsoft.Dynamics.Nav.CodeCop.Design.Rule214BlindWriteLocalRecord' threw an exception of type 'System.InvalidCastException' with message 'System.InvalidCastException: Unable to cast object of type 'Microsoft.Dynamics.Nav.CodeAnalysis.BoundFieldAccess' to type 'Microsoft.Dynamics.Nav.CodeAnalysis.IInvocationExpression'.\r\n   at Microsoft.Dynamics.Nav.CodeCop.Design.Rule214BlindWriteLocalRecord.ProcessingInvocation(SyntaxNode syntaxNode, PooledDictionary`2 processInvocations, SyntaxNodeAnalysisContext syntaxNodeAnalysisContext)\r\n   at Microsoft.Dynamics.Nav.CodeCop.Design.Rule214BlindWriteLocalRecord.<>c.<Analyze>b__5_0(SyntaxNodeAnalysisContext syntaxNodeAnalysisContext) in D:\\a\\1\\s\\source\\Prod\\Microsoft.Dynamics.Nav.CodeCop\\Design\\Rule214BlindWriteLocalRecord.cs:line 46\r\n   at Microsoft.Dynamics.Nav.CodeAnalysis.Diagnostics.AnalyzerExecutor.<>c__DisplayClass52_1.<ExecuteSyntaxNodeAction>b__1() in D:\\a\\1\\s\\source\\Prod\\Microsoft.Dynamics.Nav.CodeAnalysis\\DiagnosticAnalyzer\\AnalyzerExecutor.cs:line 742\r\n   at Microsoft.Dynamics.Nav.CodeAnalysis.Diagnostics.AnalyzerExecutor.ExecuteAndCatchIfThrows_NoLock(DiagnosticAnalyzer analyzer, Action analyze, Nullable`1 info) in D:\\a\\1\\s\\source\\Prod\\Microsoft.Dynamics.Nav.CodeAnalysis\\DiagnosticAnalyzer\\AnalyzerExecutor.cs:line 1099'",
   "source": "AL",
   "startLineNumber": 1,
   "startColumn": 1,
   "endLineNumber": 1,
   "endColumn": 1
}


im Ruleset habe ich die Meldung abgeschaltet

Code:
       "{
            "id": "AA0214",
            "action": "Hidden",
            "justification": "The record XXXXXX should be modified before saving to the database."
        }


Diese Meldung gibt es zu verschiedenen "AA"-Ids, die ich im Ruleset auf "Hidden" gesetzt habe. Auch "None" ändert nix. "Warning" oder "Error" bringt zwar den NullException-Error nicht mehr, aber dann halt die Warning, die ich ja gerade abschalten möchte.
Wie gesagt, es passiert nicht immer. Die Extension wird trotzdem korrekt kompiliert und kann installiert und ausgeführt werden. Aber die Meldung nervt...
Was kann ich tun?