У меня есть база данных (WSS_Content) Sharepoint, но ни одна из них не установлена, и мне нужны ее данные. Каково ваше решение для получения данных? Должен ли я кодировать конвертер для извлечения файлов/ссылок/данных сайтов из двоичных массивов в данные или есть более простой способ? Могу ли я установить новую sharepoint и использовать эту базу данных?Поиск данных Sharepoint
ответ
Я выкопал старое приложение, которое у меня было немного назад, и делает действительно базовое извлечение всех документов из базы данных контента. Это не выборочно, он просто захватывает все, что есть. Затем вы можете выбрать результат, чтобы получить то, что вам нужно.
Я считаю, что исходный код был получен от кого-то другого (я не могу вспомнить, где так не могу их отдать). Я просто немного взломал его. Не стесняйтесь сделать снимок.
Он просто обращается к базе данных напрямую, поэтому вам просто нужно установить его на SQL Server. Сервер SharePoint не требуется.
using System;
using System.Data.SqlClient;
using System.IO;
namespace ContentDump
{
class Program
{
// Usage: ContentDump {server} {database}
//
static void Main(string[] args)
{
string server = args[0];
string database = args[1];
string dbConnString = String.Format("Server={0};Database={1};Trusted_Connection=True;", server, database);
// create a DB connection
SqlConnection con = new SqlConnection(dbConnString);
con.Open();
// the query to grab all the files.
SqlCommand com = con.CreateCommand();
com.CommandText = "SELECT ad.SiteId, ad.Id, ad.DirName," +
" ad.LeafName, ads.Content" +
" FROM AllDocs ad, AllDocStreams ads" +
" WHERE ad.SiteId = ads.SiteId" +
" AND ad.Id = ads.Id" +
" AND ads.Content IS NOT NULL" +
" Order by DirName";
// execute query
SqlDataReader reader = com.ExecuteReader();
while (reader.Read())
{
// grab the file’s directory and name
string DirName = (database + "/" + (string)reader["DirName"]).Replace("//", "/");
string LeafName = (string)reader["LeafName"];
// create directory for the file if it doesn’t yet exist
if (!Directory.Exists(DirName))
{
Directory.CreateDirectory(DirName);
Console.WriteLine("Creating directory: " + DirName);
}
// create a filestream to spit out the file
FileStream fs = new FileStream(DirName + "/" + LeafName, FileMode.Create, FileAccess.Write);
BinaryWriter writer = new BinaryWriter(fs);
int bufferSize = 1024;
long startIndex = 0;
long retval = 0;
byte[] outByte = new byte[bufferSize];
// grab the file out of the db
do
{
retval = reader.GetBytes(4, startIndex, outByte, 0, bufferSize);
startIndex += bufferSize;
writer.Write(outByte, 0, (int)retval);
writer.Flush();
} while (retval == bufferSize);
// finish writing the file
writer.Close();
fs.Close();
Console.WriteLine("Finished writing file: " + LeafName);
}
// close the DB connection and whatnots
reader.Close();
con.Close();
}
}
}
Спасибо Nigel. Это именно то, что я искал. – Saber
Вы можете попытаться подключить свою базу данных в новой среде sharepoint и webapp с помощью команды stsadm.exe -o addcontentdb -url -databasename. Этот способ используется для миграции базы данных из sharepoint 2007 в 2010 Farms тоже. Затем вы должны увидеть содержимое в URL-адресе webapp
Спасибо за решение. Но извлечение только файлов было проще. – Saber
- 1. Поиск по внешней базе данных SharePoint
- 2. Поиск профиля пользователя SharePoint
- 3. Sharepoint Поиск не работает
- 4. Sharepoint 2007 - поиск
- 5. Поиск в дизайне sharepoint
- 6. Sharepoint 2007 - поиск
- 7. Sharepoint Поиск недвижимости Взвешивание
- 8. Поиск в списке SharePoint
- 9. Sharepoint и межсайтовый поиск
- 10. Sharepoint 2010 + vs2010 + поиск списка Sharepoint
- 11. Поиск метаданных SQL через SharePoint
- 12. Расширенный поиск вариант Программный поиск Sharepoint
- 13. Поиск видеофайлов в sharepoint 2010 поиск
- 14. Поиск Sharepoint при использовании DataKeynames
- 15. Поиск Sharepoint/Access - Обновить таблицу
- 16. Поиск meta tags в Sharepoint
- 17. Поиск конкретного пользователя SharePoint программно
- 18. Программный поиск пользователя в SharePoint
- 19. Sharepoint поиск внешних RSS-каналов
- 20. Как проверить поиск в sharepoint?
- 21. Поиск SharePoint CAML в Модифицированном
- 22. Sharepoint поиск всех столбцов списка
- 23. SharePoint 2016 Поиск сборки WebControls?
- 24. Sharepoint 2010 выпадающий список поиск
- 25. sharepoint поиск с вариационным сайтом
- 26. Sharepoint 2010 Поиск прицелы Информация
- 27. Поиск значений списка поиска SharePoint в базе данных
- 28. Поиск данных для Microsoft Project в предприятии SharePoint
- 29. В чем разница между «Поиск в Office SharePoint Server» и «Поиск служб Windows SharePoint Services»
- 30. Поиск по ключевому слову Sharepoint возвращает меньше результатов, чем поиск по умолчанию sharepoint
Какие данные вам нужны и что вы будете делать с этим? Если вам просто нужно извлечь документы с сайта, это довольно просто. –
У меня есть файлы doc, docx, jpg, odc, pdf, pptx, zip, rar в этой базе данных. Просто хочу извлечь файлы. – Saber