Ich implementierte eine VS2013-Erweiterung in einer Form von VSPackage, die auch einen Klassifizierer für eine bestimmte Dateierweiterung exportiert. Alles funktioniert gut, und das einzige, was mich stört, ist, dass GetClassifier() zweimal in meiner Implementierung von IClassifierProvider aufgerufen wird. Dies führt zur Erzeugung von zwei Klassifikatoren, die beide die gleichen Änderungen verarbeiten. Die Implementierung von IClassifierProvider ist so einfach wie unten gezeigt.GetClassifier() von IClassifierProvider zweimal aufgerufen?
Ich habe versucht, mein Paket zu minimieren, indem Sie alles entfernen, was nicht mit der Klassifizierung zusammenhängt, ohne Erfolg. Würde mich wirklich über einen Hinweis zu diesem Thema freuen.
UPDATE: Ich habe mich geirrt, dass Textpuffer in GetClassifier-Aufrufen unterschiedlich sind. Dieser Beitrag wurde entsprechend aktualisiert.
Ich habe mich geirrt, dass Puffer anders sind, habe es nochmal überprüft. Ich kann dieses Problem jetzt umgehen, indem ich den Cache von Klassifikatoren gegen Puffer aufbewahre. – edwabr123
Kühl. Ihr Klassifikator kann IDisposable implementieren, um zu wissen, wann Ihre Klassifikatoren nicht mehr benötigt werden, wenn Sie diese Fähigkeit benötigen. –