Comment puis-je attribuer une DBNull dans une meilleure façon?

J'ai besoin d'analyser une valeur à partir d'une DataRow et de l'affecter à une autre DataRow. Si l'entrée est valide, alors j'ai besoin de l'analyser pour un double, ou bien ajouter un DBNull de la valeur à la sortie. Je suis en utilisant le code suivant:

public double? GetVolume(object data)
{
    string colValue = data == null ? string.Empty : data.ToString();
    double volume;

    if (!Double.TryParse(colValue.ToString(), out volume))
    {
        return null;
    }
    return volume;
}

public void Assign(DataRow theRowInput,DataRow theRowOutput)
{
    double? volume = GetVolume(theRowInput[0]);

    if(volumne.HasValue)
    theRowOutput[0] = volume.value;
    else
    theRowOutput[0] = DbNull.Value;

    return theRowOutput;
}

Est-il un meilleur moyen de le faire?

OriginalL'auteur Mike | 2011-02-17