discussed here - http://msbuildextensionpack.codeplex.com/discussions/279097
Looking at the code for Detokenise, I observe that the method [DoDetokenise()] is always (from InternalExecute()) called. The [DoDetokenise()] method proceeds to initialise a [Project] object by reloading the project file irrespective of whether the ReplacementValues Item set is populated or not.
Doesn't this bring unnecessary overhead whilst reloading the project where this is not needed? I was under the impression that once ReplacementValues is set, the project file will not be re-loaded.
Comments: Resolved with changeset 78855: FileSystem\Detokenise.cs: Performance optimization if using only CollectionMode
Resolves #10920 (Optimize Detokenise) raised by ChikeOkor on 14 June 2012
Looking at the code for Detokenise, I observe that the method [DoDetokenise()] is always (from InternalExecute()) called. The [DoDetokenise()] method proceeds to initialise a [Project] object by reloading the project file irrespective of whether the ReplacementValues Item set is populated or not.
Doesn't this bring unnecessary overhead whilst reloading the project where this is not needed? I was under the impression that once ReplacementValues is set, the project file will not be re-loaded.
Comments: Resolved with changeset 78855: FileSystem\Detokenise.cs: Performance optimization if using only CollectionMode
Resolves #10920 (Optimize Detokenise) raised by ChikeOkor on 14 June 2012