空对象引用 - 如何最好地调试?

时间:2015-04-23 10:00:23

标签: c# wcf

我有一个WCF Service方法来查找某个目录中需要下载的所有文件的名称。
我可以检索文件名,但是当我添加循环以将每个文件名作为FileUploadMessage发送到我的下载方法时,我得到了

  

对象引用未设置为对象的实例

C#:

String[] Names = Directory.GetFiles(ContentPath);

for (int i = 0; i < Names.Length; i++)
{
     FileUploadMessage request = new FileUploadMessage();

     string fileName = Names[i].ToString();
     request.Metadata.RemoteFileName = Names[i].ToString();
     request.Metadata.LocalFileName = Names[i].ToString();

     DownloadFile(request);
}

FileUploadMessage在我的消息合约中定义如此 -

[MessageContract]
    public class FileUploadMessage
    {
        [MessageHeader(MustUnderstand = true)]
        public FileMetaData Metadata;
        [MessageBodyMember(Order = 1)]
        public Stream FileByteStream;
    }

FileMetaData在数据合同中定义 -

public FileMetaData(String localFileName, String remoteFileName,  String compilationName)
{
   this.LocalFileName = localFileName;
   this.RemoteFileName = remoteFileName;
   this.CompName = compilationName; 
}

我无法理解什么对象引用为null 路径正确,所有对象都已定义。

在这种情况下以及将来的情况下 - 如何找到哪个对象引用为空?
首先要检查的是什么?

0 个答案:

没有答案