none
Ajax File Upload в SandBox решении для Sharepoint Online RRS feed

  • Общие обсуждения

  • Доброго времени суток коллеги.

    Есть проект, в котором есть некоторое количество инпутов вида <input type="file">

    Так вот я пытаюсь при выборе файла загружать этот файл сразу в SharePoint. Вот javascript который это делает:

    var file = evt.target.files[0]; 
    //file сущетсвует. Это проверял.
    $.ajax({
        beforeSend: function (xhr) {
            xhr.setRequestHeader("Cache-Control", "no-cache");
            xhr.setRequestHeader("X-File-Name", file.fileName);
            xhr.setRequestHeader("X-File-Size", file.fileSize);
            xhr.setRequestHeader("Content-Type", "multipart/form-data");
    
        },
        async: false,
        cache: false,
        type: 'POST',
        url: url,
        processData: false,
        data: file,
        success: function (data, textStatus, xhr) {
            $(".loading").remove();
        },
        error: function (xhr, textStatus, errorThrown) {
            // do something
        }
    });

    Потом на стороне сервера пытаюсь забрать этот файл вот так:

    string filename = Page.Request.Headers["X-File-Name"];
    Stream inputStream = Page.Request.InputStream;
    //Page.Request.InputStream выдает Null Exception

    Прикол в том, что если я это делаю из настольного браузера, все работает. Если же я пытаюсь сделать тоже самое на планшете с Android 4.0, то выдает exception

    Microsoft.SharePoint.UserCode.SPUserCodeSolutionProxiedException: Value cannot be null. Parameter name: path1 at System.IO.Path.Combine(String path1, String path2)

    После добавления в файл C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\UserCode\web.config строки <httpRuntime requestLengthDiskThreshold = “4096″ /> все работает как и должно на тестовом стенде.

    НО! Это SharePoint Online. И я не могу подправить этот файл. :(

    Есть какие-нибудь мысли о том, как обойти эту проблему?

    Почитал вот тут, про EnableViewState, но что-то не понял как это прикрутить мне :(

    10 января 2013 г. 7:19