From d4e96910115981747365047b41bd27cd3131bd2a Mon Sep 17 00:00:00 2001 From: jklingen Date: Fri, 11 Apr 2025 16:46:04 +0200 Subject: [PATCH] Use custom ApplyTokenReplacements task --- src/Directory.Build.targets | 147 +++++++++++++++++++++++++++++++++++- 1 file changed, 143 insertions(+), 4 deletions(-) diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets index 412a5fca3..30d47247a 100644 --- a/src/Directory.Build.targets +++ b/src/Directory.Build.targets @@ -1,7 +1,79 @@ + + + + + + + + + + (); + + foreach (var line in InputLines) + + { + + string text = line.ItemSpec; + + foreach (var token in Tokens) + + { + + // Hole den Token-Namen (z. B. Box13_ClientId) + + string tokenName = token.ItemSpec; + + // Skip if tokenName is null or empty + if (string.IsNullOrEmpty(tokenName)) + continue; + + Log.LogMessage(MessageImportance.High, "Token name: "+tokenName); + + Log.LogMessage(MessageImportance.High, "Token: "+ token); + + // Hole den tatsächlichen Wert des Tokens, der ersetzt werden soll + + string replacementValue = token.GetMetadata("ReplacementValue"); + Log.LogMessage(MessageImportance.High, "replacementValue: "+ replacementValue); + + // Ersetze das Token durch den Wert + + if (!string.IsNullOrEmpty(replacementValue)) + + { + + string placeholder = "$"+ "{"+tokenName+"}"; // Token-Format wie $(Box13_ClientId) + + Log.LogMessage(MessageImportance.High, "placeholder: "+ placeholder); + + text = text.Replace(placeholder, replacementValue); + + } + + } + + output.Add(new Microsoft.Build.Utilities.TaskItem(text)); + + } + + OutputLines = output.ToArray(); + + ]]> + + + + + + + + + $(NuGetPackageRoot)msbuildtasks/1.5.0.235/tools/ @@ -9,7 +81,74 @@ - - + + + + + + + + + + + + + + + + + + + - \ No newline at end of file + + + + +