尝试为保存在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 f.ex开始,我可以使它工作。但是如果XML文件为空,则不会返回值。我忽略了什么吗?
答案 0 :(得分:2)
使用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;
}