Alternativ zum verschachtelten Typ Ausdruck <Func <T >>
Ich habe eine Funktion, die beim Aufrufen eines Dienstes verwendet wird. Bevor der Dienst aufgerufen wird, wird ein Protokolleintrag erstellt:
protected TResult CallService<TService, TResult>(TService service,
Expression<Func<TService, TResult>> functionSelector)
{
Logger.LogServiceCall(service, functionSelector);
return functionSelector.Compile()(service);
}
Der Visual Studio 2010 Code Analyzer weist mich darauf hin, dass ich in der folgenden Nachricht Nested Type nicht verwenden sollte:
CA1006: Microsoft.Design: Betrachten Sie ein Design, bei dem 'ServiceManager.CallService <TService, Ergebnis> (TService, Ausdruck <Func <TService, TResult >>)' den generischen Typ 'Ausdruck <Func <TService, TResult >>' nicht verschachtelt '.
Während ich für diesen Eintrag einfach eine Unterdrückungsregel erstellen könnte, gibt es eine Alternative, die das Anzeigen einer solchen Warnung verhindern würde?