C# 检测到LINQ到XML XElement无法访问的代码?

C# 检测到LINQ到XML XElement无法访问的代码?,c#,xml,linq,C#,Xml,Linq,我试图使用c中的LINQ从XML文件中获取值,它给了我一个警告 类System.Xml.Linq.XElement表示一个Xml元素。警告:检测到无法访问的代码 我不确定您是否提供了实际的代码,但您缺少的是一个return语句,它不是一个警告,而是一个错误。显然,此代码不会生成任何警告。您可以在方法末尾添加return语句,如下所示: return list1.Any(); 或者你可以在一句话中这样做: public bool VerifyEmail(string e) { stri

我试图使用c中的LINQ从XML文件中获取值,它给了我一个警告

类System.Xml.Linq.XElement表示一个Xml元素。警告:检测到无法访问的代码


我不确定您是否提供了实际的代码,但您缺少的是一个return语句,它不是一个警告,而是一个错误。显然,此代码不会生成任何警告。您可以在方法末尾添加return语句,如下所示:

return list1.Any();
或者你可以在一句话中这样做:

public bool VerifyEmail(string e)
{
     string email = e;

      //Grab element values that match the Email attribute in XML file
      XElement root = XElement.Load(bdConfigFile);
      return root.Elements().Any(el => (string)el.Attribute("Email") == email);
}
我想您应该将Email属性的值与参数Email进行比较,否则就没有任何意义。另外,如果您知道哪个元素拥有Email属性,您可以使用以下方法:

return root.Descendants("ParentElement")
      .Any(el => (string)el.Attribute("Email") == email);

而不是迭代所有元素。

警告与哪一行相关?此代码不会编译。给我们看一些可编译的代码不知道你说的可编译的代码是什么意思。。。如果它被编译,我就不会有问题了?为VS2010,给出警告的代码行为XElement root=XElement.loadbdConfigFile;我将你的代码复制/粘贴到了一个控制台应用程序中,它没有给我任何警告。谢谢你非常有用的回答。。我想可能是返回语句,代码检查也很有帮助!干杯
return root.Descendants("ParentElement")
      .Any(el => (string)el.Attribute("Email") == email);