Общие вопросы о наилучшей практике при разработке в sharepoint - PullRequest
0 голосов
/ 07 февраля 2012

У меня есть несколько общих вопросов о том, каковы лучшие практики для SharePoint (2010).

В настоящее время я реализую функцию, которая требует от меня извлечения информации из списка. Я не совсем уверен, как управлять этой информацией. Я создал класс, который помогает мне управлять этой информацией (User.cs). У меня есть получатель в классе, который в настоящее время ищет значение в определенном списке. Как мне справиться со значением? Должен ли я сохранить его в элементе и обновлять только при условии его изменения или обновлять значение из списка каждый раз, когда получаю его?

private void doesUserHasActivities(){
      using(SPSite site = new SPSite("http://vmsharepoint2010/")){
          using(SPWeb web = site.openWeb("http://vmsharepoint2010/")){
              SPList list = web.list["Users"];
              SPListItem user;
              /*Information values is refresh each time its accessed, is this bad ?*/
              for(int i=0; i < list.items.length; i++){
                  user = list.item[i];
                  string accName = user["Acc_Name"];
                  if(accName == this.providedAccountname){//providedAccountname from a TextBox
                      //found the user i wanted into the list
                      //look if the list has data
                      bool hasActivities = user["Activities"] != null;
                  }
              }
          }
      }
}

Кроме того, существуют ли другие способы доступа к определенным данным, в этом случае список действий без циклического перебора каждой строки, пытаясь найти нужного пользователя, а затем поиска значений в списке действий?

Могу ли я сохранить саму строку в качестве члена для моих метаданных? Будет ли моя ссылка по-прежнему указывать на строку списка пользователей, к которой я хочу добавить другого пользователя?

1 Ответ

4 голосов
/ 07 февраля 2012

Вам необходимо изучить CAML и выполнить запрос CAML.

Создать объект SPQuery. Установите для свойства Query значение, которое вам нужно, а затем используйте list.getItems(SPQuery query), чтобы получить только элементы, соответствующие вашему запросу.

Вы можете сами определить CAML; вам нужно изучить его, если вы вообще хотите иметь дело с кодом SharePoint. Существует много информации о базовом синтаксисе и инструментах, помогающих автоматически генерировать его на основе более удобного синтаксиса.

Элементы не будут обновляться динамически, когда элементы добавляются в список или обновляются в списке; вам нужно будет повторно выполнить запрос.

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