我有以下方法,用于将文件名添加到List<string>,以便将所需的文件顺序存储在Program类中:

    private static void ConvertPdfs()
    {
        // Get the word files FileInfo
        FileInfo[] wordFileInfo = DataGrabber.GetHrWordFileInfo(sourceFolder, spSite, policyListName, sortBy);

        foreach (FileInfo file in wordFileInfo)
        {
            // Create the ordered list - this adds each document to the list in the correct oder (sort in CAML query)
            orderedListOfFileNames.Add(file.Name);
        }
        Converter convert = new Converter();
        convert.ToPdf(wordFileInfo, targetPdf);
    }


其中ordereListOfFileNames是同一类中的字段:

 private static List<string> orderedListOfFileNames; // Stil static ...


当方法围绕wordFileInfo循环时,我看到此异常:

An unhandled exception of type 'System.NullReferenceException' Occurred in PdfConverter.exe
Additional information: Object reference not set to an instance of an object.


但是,我看到wordFileInfo包含22个项目,所有项目都有一个名称。

这里的问题是orderedListOfFileNames没有正确初始化的事实吗?

最佳答案

您需要实例化orderedListOfFileNames,然后使用新的操作器将值添加到列表中,如下所示:

private static List<string> orderedListOfFileNames= new List<string>();

10-04 20:21