Как загрузить файл в библиотеку документов Sharepoint с помощью Silverlight и клиентских веб-служб? - PullRequest
2 голосов
/ 10 марта 2010

Большинство решений, с которыми я сталкивался при загрузке документов из библиотеки Sharepoint, используют метод HTTP «PUT», но у меня возникают проблемы с поиском способа сделать это в Silverlight, поскольку он имеет ограничения на методы HTTP. Я посетил этот http://msdn.microsoft.com/en-us/library/dd920295(VS.95).aspx, чтобы увидеть, как разрешить PUT в моем коде, но я не могу найти, как это поможет вам использовать HTTP "PUT".

Я использую клиентские веб-сервисы, что ограничивает некоторые доступные функции Sharepoint.

Это оставляет меня с этими вопросами:

  1. Могу ли я сделать HTTP PUT в Silverlight?
  2. Если я не могу или есть другой лучший способ загрузить файл, что это?

Спасибо

Ответы [ 2 ]

1 голос
/ 12 марта 2010

разобрался !! работает как шарм

    public void UploadFile(String fileName, byte[] file)
    {
        // format the destination URL

        string[] destinationUrls = {"http://qa.sp.dca/sites/silverlight/Answers/"+fileName}; 

        // fill out the metadata
        // remark: don't set the Name field, because this is the name of the document

        SharepointCopy.FieldInformation titleInformation = new SharepointCopy.FieldInformation
            {DisplayName =fileName, 
             InternalName =fileName, 
             Type = SharepointCopy.FieldType.Text, 
             Value =fileName};

        // to specify the content type

        SharepointCopy.FieldInformation ctInformation = new SharepointCopy.FieldInformation
            {DisplayName ="XML Answer Doc", 
             InternalName ="ContentType", 
             Type = SharepointCopy.
             FieldType.Text, 
             Value ="xml"};

        SharepointCopy.FieldInformation[] metadata = { titleInformation }; 

        // initialize the web service

        SharepointCopy.CopySoapClient copyws = new SharepointCopy.CopySoapClient(); 

        // execute the CopyIntoItems method
        copyws.CopyIntoItemsCompleted += copyws_CopyIntoItemsCompleted;
        copyws.CopyIntoItemsAsync("http://null", destinationUrls, metadata, file);
    }

Большое спасибо Карине Бош за решение здесь: http://social.msdn.microsoft.com/Forums/en/sharepointdevelopment/thread/f135aaa2-3345-483f-ade4-e4fd597d50d4

0 голосов
/ 11 марта 2010

Какой тип развертывания SharePoint и какая версия silverlight? Если, скажем, это развертывание в интрасети, вы можете использовать UNC-пути для доступа к своей библиотеке документов в sharepoint и savefiledialog / openfiledialog, доступной в Silverlight 3.

http://progproblems.blogspot.com/2009/11/saveread-file-from-silverlight-30-in.html

или

http://www.kirupa.com/blend_silverlight/saving_file_locally_pg1.htm

Silverlight имеет ограничения на то, что он может делать с локальными файлами, хотя я читал, что в Silverlight 4 есть некоторые изменения.

http://www.wintellect.com/CS/blogs/jprosise/archive/2009/12/16/silverlight-4-s-new-local-file-system-support.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...