2010-05-24 124 views
0

無法導入應用程序定義文件!錯誤:名稱爲'XYZ'且類型爲'LobSystemInstance'的元數據對象具有名稱爲'DatabaseAccessProvider'的屬性,該屬性具有無效值或類型。錯誤發生在Line:'10'和位置:'10'之前或之前。在ADF我們可以將Sharepoint連接到SQL Server 6.5嗎?

線10:

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

請給我如何在SharePoint顯示從SQL Server 6.5的數據上的想法?

+4

6.5!?真?節哀順變。 – 2010-05-24 20:20:17

+0

SharePoint只是一個ASP.NET應用程序。如果你可以在ASP.NET中完成,你可以在SharePoint中完成。 – 2010-05-25 11:18:06

+0

任何人都可以幫助我嗎? – nalini 2010-06-09 17:33:07

回答

0

該節點的值無效。您需要使用SqlServerOleDb。看看這個頁面瞭解更多信息:

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

+0

如果我使用OleDb,ADF已成功導入,但是當我嘗試使用業務數據列表Web部件時,它給我一個錯誤:「從XYZinstance中檢索數據時發生錯誤」!即使我嘗試使用應用程序定義設計器,它連接到數據庫,但無法創建lobsystem實例。拖動n後,刪除表並單擊確定,它彈出uo這混亂:「desginer停止工作突然!!」 – nalini 2010-05-25 16:19:23

0

我只是起一個類似的任務(讓我找到了你回答的問題)。我正在嘗試將我們的Sharepoint文檔庫複製到SQL數據庫中。它不直接從SQL打開你的文件,它使用一些C#代碼來設置一個作業,打開可能是你想要的共享點。

到目前爲止我發現了兩種方法: 一種方法是將您的數據從Sharepoint複製到Access中的鏈接列表中,然後使用OLEDB方法打開它。 這裏找到:C# Sync MS Access database to sql server

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程序庫並直接從C#打開您的SharePoint然後把它複製到你的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

Doh!我剛剛意識到你的問題正在走向另一條路。如果這是有用的,我會離開它,如果不是,那麼我可以刪除它。 我認爲你可以使用相同的庫去其他方式,但切換讀取和寫入。也許通過編寫你的SQL來訪問和使用訪問來鏈接到你的SharePoint。 我還沒有做過這個方向,所以我沒有任何代碼方便,但這是一種方法的描述。 在嘗試使用內置的導入工具直接將SQL加載到SharePoint中或將其加載到訪問權限後,請查看您是否可以訪問SharePoint。 – JPK 2014-03-11 08:32:58

相關問題