2

これがクエリです

XDocument application = XDocument.Load(@".\..\..\XmlFile\" + xmlFileName); 
var elements = from p in application.Descendants("Function")
               where ((string)p.Attribute("Fnumber").Value.Trim() ==  (SourceCodeParser.fCount.ToString().Trim()) && (string)p.Attribute("MethodName").Value.Trim() == (methodName) && (string) p.Parent.Parent.Attribute("ClassName").Value.Trim()== (className))
               select p.Element("MethodDependencies");

以下は、例外をスローするクエリを実行するためのコードスニペットです。

foreach (var file in elements)
{
    file.Add(
        new XElement("MethodDependency",
            new XAttribute("MethodName", MethodName),
            new XAttribute("ObjectName", ObjectName),
            new XAttribute("CallNumber", SourceCodeParser.methodcallCount.ToString().Trim()),
            new XElement("Arguments")
       ));
}

これがXml構造です

<Classes>
  <Class ClassName="" ClassPath="" ModifiedDate="" CreationDate="" InheritedFrom="" Modifier="" Specifier="">
      <Functions>
        <Function ReturnType="" Fnumber="" AccessModifier="" AccessSpecifier="" MethodName="">
          <Dependencies />
          <MethodDependencies />
        </Function>
      </Functions>
  </Class>
</Classes>

このクエリは他のファイルではうまく機能しますが、コードはすべてのファイルで同じですが、一部のファイルでは例外がスローされます...

なにか提案を?

4

0 に答える 0