Можем ли мы подключить Sharepoint к SQL Server 6.5? - PullRequest
0 голосов
/ 25 мая 2010

Не удалось импортировать файл определения приложения !! Ошибка: Объект метаданных с именем 'XYZ' и типом 'LobSystemInstance' имеет свойство с именем 'DatabaseAccessProvider', которое имеет недопустимое значение или тип. Ошибка произошла в или непосредственно перед строкой «10» и позицией «10».

строка 10 в АПД:

 <"Property Name="DatabaseAccessProvider" Type="System.String">SqlOledb<"/Property>

Пожалуйста, дайте мне идеи о том, как отображать данные из SQL Server 6.5 в Sharepoint?

Ответы [ 2 ]

0 голосов
/ 24 февраля 2014

Я только начинаю похожее задание (поэтому я нашел ваш вопрос без ответа). Я пытаюсь скопировать нашу библиотеку документации в Sharepoint в базу данных SQL. Он не открывает ваш файл напрямую из SQL, он использует некоторый код на c # для настройки задания, которое открывает точку совместного использования, которая может быть тем, что вам нужно.

На данный момент я нашел два метода: Один из них - скопировать ваши данные из sharepoint в связанный список в Access, а затем использовать методы OLEDB для его открытия. Найдено здесь: C # Синхронизация базы данных MS Access с сервером sql

    private static void BulkCopyAccessToSQLServer
            (CommandType commandType, string sql, string destinationTable)
    {
        string connectionString = @"C:\Migration\Sharepoint Access SQL Batch Job\Database11.accdb";
        using (DataTable dt = new DataTable())
        {

            string ConnStr = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Migration\Sharepoint Access SQL Batch Job\Database11.accdb;Jet OLEDB:Database Password=password";
            //using (OleDbConnection conn = new OleDbConnection(Settings.Default.CurriculumConnectionString))
            using (OleDbConnection conn = new OleDbConnection(ConnStr))
            using (OleDbCommand cmd = new OleDbCommand(sql, conn))
            using (OleDbDataAdapter adapter = new OleDbDataAdapter(cmd))
            {
                cmd.CommandType = commandType;
                cmd.Connection.Open();
                adapter.SelectCommand.CommandTimeout = 240;
                adapter.Fill(dt);
                adapter.Dispose();
            }



            using (SqlConnection conn2 = new SqlConnection(Settings.Default.qlsdat_extensionsConnectionString))

            using (SqlConnection conn2 = new SqlConnection(connectionString))
            {
                conn2.Open();
                using (SqlBulkCopy copy = new SqlBulkCopy(conn2))
                {
                    copy.DestinationTableName = destinationTable;
                    copy.BatchSize = 1000;
                    copy.BulkCopyTimeout = 240;
                    copy.WriteToServer(dt);
                    copy.NotifyAfter = 1000;
                }
            }
        }
    }

Другой способ - использовать библиотеки Microsoft.Sharepoint и открыть вашу sharepoint напрямую из c #, а затем скопировать ее в ваш SQL. Найдено здесь: http://www.dotnetspark.com/kb/3573-fetching-lists-from-sharepoint-2010-site.aspx

    using (SharePointclientObj.ClientContext ctx = new SharePointclientObj.ClientContext(clientContext))
        {                
            //Get the site
            SharePointclientObj.Web site = ctx.Web;
            ctx.Load(site);
            //Get Lists
            ctx.Load(site.Lists);
            //Query
            ctx.ExecuteQuery();
            //Fill List
            foreach (SharePointclientObj.List list in site.Lists)
            {
                Console.WriteLine(list.Title);                   
            }

        }
0 голосов
/ 25 мая 2010

Значение узла недопустимо. Вам необходимо использовать SqlServer или OleDb . Проверьте эту страницу для получения дополнительной информации:

http://msdn.microsoft.com/en-us/library/ms550725(office.12).aspx

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