如果xml文件为空,则不能返回int

本文关键字:不能 返回 int xml 文件 如果 | 更新日期: 2023-09-27 17:55:04

尝试为保存在xml文件中的内容设置唯一ID。现在这是我的代码:

public int getUniqueID()
    {
        var idlist = from ids in connectToXML().Descendants("moviereview")
                      select (int)ids.Element("id");
        int biggestId = idlist.Max();
        if (biggestId< 1 || biggestId.Equals(null))
        {
            return biggestId;
        }
        else
        {
            return biggestId + 1;
        }        
    }

我试图得到一个值返回,如果ID是null或0,当它第一次运行。因为我可以让它工作,如果我手动添加一些东西到xml文档,然后从ID 1 fex开始。但是如果xml文件为空,则不会返回值。我忽略了什么吗?

如果xml文件为空,则不能返回int

使用DefaultIfEmpty():

public int getUniqueID()
{
    var idlist = from ids in connectToXML().Descendants("moviereview")
                  select (int)ids.Element("id");
    int biggestId = idlist.DefaultIfEmpty().Max();
    return biggestId + 1;     
}