Wenn ich eine ManagementObjectSearcher
verwende, kann ich sie einfach umbrechen es in einem using
-Block:
Es ist auch einfach, die vom Sucher zurückgegebene Sammlung zu verwerfen. aufgrund der Tatsache, dass foreach
automatisch den Enumerator abruft :
Aber ManagementObject
implementiert auch IDisposable
:
ManagementObject
-Instanz entsorgen? Dispose
aufzurufen)? Besonders bei Konstruktionen wie searcher.Get().First()
? Bearbeiten : Noch ein paar verwandte Fragen:
Dispose
in der Suchergebnissammlung aufrufen? Sie implementieren auch ihre eigene IDisposable
-Methode, obwohl es so aussieht, als ob der Sucher die Dispose
-Implementierung nur von Component
erbt; Es fügt kein eigenes Dispose-Verhalten hinzu.
ManagementObject
erbt von System.ComponentModel.Component
und Sie sollte Dispose
explizit für alle geerbten Objekte von Component
aufrufen.
Sie können LINQ
Methoden mit eigenen Prädikaten verwenden, die Dispose
selbst aufrufen:
Dieser Code entspricht:
%Vor% Wo Satisfy
Ihre eigene Methode ist.
Tags und Links c# linq wmi idisposable