2015-11-18 7 views
12

Se uso la funzione di codice ReSharper di pulitura, sto trovando il mio codice ...Come smettere di ReSharper Commutazione tra Enumerable.ToList e Select suggerimento

var personInfos = persons.Select(Mapper.Map<PersonInfo>).ToList(); 

viene modificato in ...

var personInfos = Enumerable.ToList(persons.Select(Mapper.Map<PersonInfo>)); 

Ma poi ReSharper rende un suggerimento "per metodo di estensione invocazione" per la Enumerable.ToList modo che il codice risale al ...

var personInfos = persons.Select(Mapper.Map<PersonInfo>).ToList(); 

Ho verificato le opzioni di modifica del codice di Resharper, ma non riesco a vedere dove/come posso interrompere questo comportamento di commutazione

risposta

3

Penso @Matthias possono essere corrette

Ho aggiornato al corrente ReSharper, cioè 2016/01/02 e provato il codice ...

var personInfos = persons.Select(Mapper.Map<PersonInfo>).ToList(); 

ReSharper non offre più un suggerimento

e @ Vlad274 questo è con il mio codice di pulitura e Optimise 'using' directivesShorten qualified references entrambi ancora controllato

0

Per risolvere questo problema è necessario creare un profilo di pulizia personalizzato. Le due impostazioni che devono essere disattivate sono evidenziate di seguito.

Settings

Per impostazione predefinita, la pulizia completa è entrambe le impostazioni acceso. Se entrambe le impostazioni sono attive, la pulizia farà questo passaggio.

+4

Se questo è davvero il caso, sembra un bug per me e dovresti segnalarlo a https://youtrack.jetbrains.com. Queste due opzioni non sono chiaramente responsabili per lo scambio tra l'invocazione statica e l'estensione. Ho entrambe le opzioni abilitate e viene mantenuta la solita invocazione di tipo istanza. – Matthias

0

In alternativa all'aggiornamento e forse a una soluzione più generale:

Nel menu di ispezione del codice è necessario eseguire l'ispezione "Converti richiamo del metodo statico ...". Esiste un'opzione denominata "Configura severità dell'ispezione". Qui dovresti essere in grado di selezionare: non mostrare.

Funziona meglio se si salvano queste preferenze in un file di impostazioni condivise in modo che tutti i lavori su questa soluzione condividano automaticamente questa impostazione.

Problemi correlati