0

WP7 アプリで、IsolatedStorage から直接ファイルのアップロードを実装しようとしています。私はこの優れた例に基づいています http://gregdoesit.com/2009/10/file-upload-in-silverlight-a-simple-solution/

UploadChunk() 呼び出しチェーンを開始するために使用するコードは次のとおりです。

public void uploadPackage(String packagePath)
    {
        string[] pathSplit = packagePath.Split('\\');
        _fileName = pathSplit[1];
        IsolatedStorageFile isf = IsolatedStorageFile.GetUserStoreForApplication();
        IsolatedStorageFileStream packageFile = isf.OpenFile(packagePath,     System.IO.FileMode.Open, FileAccess.Read);

        _bytesUploaded = 0;
        _bytesTotal = packageFile.Length;
        _data = packageFile;

        try
        {
            UploadFileChunk();
        }
        catch (Exception ex)
        {
        }
    }

wc_OpenWriteCompleted イベントが発生するまで、すべてがうまく機能しているようです。次のように実装されます。

if (e.Error == null)
        {
            object[] objArr = e.UserState as object[];
            byte[] fileContent = objArr[0] as byte[];    // NullReferenceException
            int bytesRead = Convert.ToInt32(objArr[1]);
            Stream outputStream = e.Result;
            outputStream.Write(fileContent, 0, bytesRead);
            outputStream.Close();
        }

3 行目の objArr は割り当てられませんが、e.UserState には null 以外の値があります。これにより、4 行目で NullReferenceException が発生します。objArr は null です。

問題の原因は何ですか? 私は本当にこれにこだわっています。あなたの助けを本当に感謝します.

4

0 に答える 0