Apenas para mostrar como fazer um CRUD na lista do sharepoint que criamos no post Criação de Listas Programaticamente. Para isso utilizei novamente um console aplication referenciando a dll Microsoft.Sharepoint.dll
Vamos ao código:
1: using System;
2: using System.Collections.Generic;
3: using System.Linq;
4: using System.Text;
5: using Microsoft.SharePoint;
6:
7: namespace Sharepoint.Crud
8: {
9: class Program
10: {
11: static void Main(string[] args)
12: {
13: using (SPSite oSite = new SPSite("http://intranet.contoso.com/"))
14: {
15: using (SPWeb oWeb = oSite.OpenWeb())
16: {
17: bool allowUnsafeUpdates = oWeb.AllowUnsafeUpdates;
18: oWeb.AllowUnsafeUpdates = true;
19: try
20: {
21: SPList oList = oWeb.Lists.TryGetList("Ramais Empresa");
22: if (oList != null)
23: {
24: //Adiciona um novo item e pega o id gerado
25: int id = AdicionarRamal(oList, "João Carlos", "Administativo", "Filial - São Paulo", "Somente pode ser encontrado após as <b>18:00</b>.");
26:
27: //Atualiza o Ramal
28: AtualizarRamal(oList, id, "Maria Antônia", "Administrativo", "Filial - Rio de Janeiro", "");
29:
30: //Envia o item criado para a lixeira
31: RemoverRamal(oList, id, false);
32:
33: //Adiciona um novo item
34: id = AdicionarRamal(oList, "Joaquina Ferreira", "Financeiro", "Filial - São Paulo", "Trabalho apenas nas quartas e sextas.");
35:
36: //Remove o item permanentemente
37: RemoverRamal(oList, id, true);
38: }
39: }
40: finally
41: {
42: oWeb.AllowUnsafeUpdates = allowUnsafeUpdates;
43: }
44: }
45: }
46: }
47:
48: private static void RemoverRamal(SPList oList, int id, bool excluirPermanentemente)
49: {
50: try
51: {
52: SPListItem oListItem = oList.GetItemById(id);
53: if (excluirPermanentemente)
54: {
55: //Exclui o item permanentemente
56: oListItem.Delete();
57: }
58: else
59: {
60: //Envia o item para a lixeira do site
61: oListItem.Recycle();
62: }
63: }
64: catch
65: {
66: throw new Exception("Item inexistente!");
67: }
68: }
69:
70: private static void AtualizarRamal(SPList oList, int id, string nome, string setor, string unidade, string observacao)
71: {
72: try
73: {
74: SPListItem oListItem = oList.GetItemById(id);
75: oListItem[SPBuiltInFieldId.Title] = nome;
76: oListItem["Setor"] = setor;
77: oListItem["Unidade"] = unidade;
78: oListItem["Observacao"] = observacao;
79: oListItem.Update();
80: }
81: catch
82: {
83: throw new Exception("Item inexistente!");
84: }
85: }
86:
87: private static int AdicionarRamal(SPList oList, string nome, string setor, string unidade, string observacao)
88: {
89: SPListItem oListItem = oList.AddItem();
90: oListItem[SPBuiltInFieldId.Title] = nome;
91: oListItem["Setor"] = setor;
92: oListItem["Unidade"] = unidade;
93: oListItem["Observacao"] = observacao;
94: oListItem.Update();
95: return oListItem.ID;
96: }
97: }
98: }
Algumas observações:
Linha 17:
oWeb.AllowUnsafeUpdates: Esse AllowUnsafeUpdates permite atualizações não seguras no banco de dados. Para atualizações via código devemos setar essa propriedade para true, o que ocorre na linha 18.
Linha 56 e 61:
Na linha 56 o item é enviado para a lixeira do site através do método Recycle(). Já se utilizarmos o método Delete() o item é excluído permanentemente.
Linha 89:
O Objeto SPList agora possui o método AddItem(). Esse método não existia nas versões anteriores então era necessário fazer da seguinte forma: SPList.Items.Add();
E os resultados:
Cadastro do primeiro item:
Atualização do item:
Item enviado para a lixeira do site:
Cadastro de um novo item:
Bom então é isso, até a próxima e qualquer dúvida postem ai!