Je souhaite protéger contre un cas incorrect placé dans un paramètre dans un script nant.NAnt Propriété en minuscules
Je veux prendre la valeur de x et de le convertir en minuscules, j'ai essayé d'utiliser
string::to-lower()
mais ça n'a pas marché espérant que quelqu'un est venu à travers cela et a une solution simple.
<?xml version="1.0" encoding="utf-8"?>
<project name="test" Default="test" value="net-4.0" >
<property name="x" value="default" unless="${property::exists('x')}"/>
<target name="test">
<echo message="${x}" />
</target>
</project>
MISE À JOUR
J'ai essayé la suggestion faite par Yan avec le code ci-dessous cette commande affiche encore capitales je vous expliquerai plus
J'ai un script nante qui a un paramètre qui peut être Passé dedans, une propriété vérifie l'existence du paramètre et si elle existe il l'utilise, sinon il y a une valeur par défaut. Je veux prendre le paramètre sous n'importe quelle forme et le convertir en minuscule tout en vérifiant son existence.
<?xml version="1.0" encoding="utf-8"?>
<property overwrite="true" name="x" value="default" unless="${property::exists('x')}"/>
<property overwrite="true" name="x" value="${string::to-lower(x)}" />
<target name="test">
<echo message="${x}" />
</target>
</project>
Je crois que ce soit la façon dont vous pensez que je devrais le faire Yan. J'ai testé cela avec les arguments de ligne de commande suivants.
nant -buildfile:nant.build test -D:x=TEST
Cela produit la sortie
Target framework: Microsoft .NET Framework 4.0
Target(s) specified: test
[property] Read-only property "x" cannot be overwritten.
test:
[echo] TEST
BUILD SUCCEEDED - 0 non-fatal error(s), 1 warning(s)
Total time: 0.1 seconds.
toute solution serait très appréciée
la dernière mise à jour était celle, merci – Deviland