如何打开一个可以为null的变量

Ton*_*nyP 1 .net c#-4.0

我有以下代码

 switch (xn.SelectSingleNode("@type").InnerText)
            {
                case "int":
                case "int16":
                case "int32":v=int.Parse(xn.InnerText);break;
                default:v=xn.InnerText; break;

            }
Run Code Online (Sandbox Code Playgroud)

xn.SelectSingleNode("@ type")可能返回null,如何声明switch(x)可以为空

Dar*_*rov 5

var type = xn.SelectSingleNode("@type");
if (type == null)
{
    // Handle the case
}
else
{
    switch (type.InnerText)
    {
        case "int":
        case "int16":
        case "int32":v=int.Parse(xn.InnerText);break;
        default:v=xn.InnerText; break;
    }
}
Run Code Online (Sandbox Code Playgroud)