none
Скопировать вложение из одного списка в другой RRS feed

  • Вопрос

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

    у меня аналогичная проблема http://www.gotdotnet.ru/forums/5/135948/661639/#post661639, только там автор не указал как можно скопировать файл.

    Спасибо огромное:)

     

    29 ноября 2011 г. 4:00

Ответы

  • SPSite site = new SPSite("http://localhost/");
               SPWeb web = site.OpenWeb();
               SPList list = web.Lists["Задачи"];
               SPListItem sourceItem = properties.ListItem;
               SPListItem item = list.Items.Add();
               //Копируем поля
               foreach (SPField f in sourceItem.Fields)
               {
                   if (!f.ReadOnlyField && f.InternalName != "Attachments")
                   {
                       item[f.InternalName] = sourceItem[f.InternalName];
                   }
               }
               // Копируем вложение
               foreach (string fileName in sourceItem.Attachments)
               {
                   SPFile file = sourceItem.ParentList.ParentWeb.GetFile(sourceItem.Attachments.UrlPrefix + fileName);
                   byte[] bData = file.OpenBinary();
                   item.Attachments.Add(fileName, bData);
               }
               item.Update();
    
    


    |Мой Блог | Мой твиттер |
    • Предложено в качестве ответа Serg_Strotskiy 9 декабря 2011 г. 13:23
    • Помечено в качестве ответа Roman Zhukov 12 декабря 2011 г. 6:55
    29 ноября 2011 г. 6:52
  • Да, вы верно говорите, activity надо писать в Visual Studio Создание activity для sharepoint workflow

    Посмотрите готовое решение кот. советуют здесь How to copy attachments from one list to another on change of status of an item in a sharepoint list?


    Мнения, высказанные здесь, являются отражением моих личных взглядов, а не позиции корпорации Microsoft. Вся информация предоставляется "как есть" без каких-либо гарантий.
    • Помечено в качестве ответа Therionik 23 декабря 2011 г. 3:08
    9 декабря 2011 г. 12:04

Все ответы