ノーコードでクラウド上のデータとの連携を実現。
詳細はこちら →無償トライアル:
無償トライアルへ製品の情報と無償トライアルへ:
.NET 開発者は、Web、デスクトップ、およびモバイルアプリケーションをSharePoint Server のリスト、連絡先、カレンダー、リンク、タスクなどのデータに簡単に接続できるようになります。
加藤龍彦
ウェブデベロッパー
CData ADO.NET Provider for SharePoint は、ADO.NET 標準インターフェースへ統合し、PowerShell のような. NET アプリケーションからSharePoint API へのデータ連携を可能にします。このプロバイダーは、SharePoint の認証および相互作用を簡単にします。このチュートリアルでは、PowerShell から直接SQL クエリを実行するための、いくつかの一般的なADO.NET オブジェクトの使い方を説明します。
次の3つのステップに従って create、read、update、およびdelete (CRUD) のデータ連携コマンドを PowerShell からリアルタイムSharePoint に実行:
プロバイダーのアセンブリをロード:
[Reflection.Assembly]::LoadFile("C:\Program Files\CData\CData ADO.NET Provider for SharePoint\lib\System.Data.CData.SharePoint.dll")
SharePoint に接続:
SharePoint のベースサイトもしくはサブサイトのURL を設定します。これにより、サイト・サブサイトのすべてのリストを含むSharePoint エンティティをクエリできます。
Authentication セクションのUser、Password を設定します。SharePoint のオンプレミス版の際にはこの値は必須です。
SharePoint Online に接続する場合にはSharePointEdition をSHAREPOINTONLINE に設定し、User とPassword を設定します。詳細はヘルプドキュメントの「はじめに」を参照してください。
$constr = "User=myuseraccount;Password=mypassword;Auth Scheme=NTLM;URL=http://sharepointserver/mysite;SharePointEdition=SharePointOnPremise;"
$conn= New-Object System.Data.CData.SharePoint.SharePointConnection($constr)
$conn.Open()
SharePointDataAdapter のインスタンスを生成してSQL クエリを実行し、結果を出力:
$sql="SELECT Name, Revenue from MyCustomList"
$da= New-Object System.Data.CData.SharePoint.SharePointDataAdapter($sql, $conn)
$dt= New-Object System.Data.DataTable
$da.Fill($dt)
$dt.Rows | foreach { Write-Host $_.name $_.revenue }
$cmd = New-Object System.Data.CData.SharePointCommand("UPDATE MyCustomList SET Location='Chapel Hill' WHERE Id = @myId", $conn)
$cmd.Parameters.Add(new System.Data.CData.SharePointParameter("myId","10456255-0015501366"))
$cmd.ExecuteNonQuery()
$cmd = New-Object System.Data.CData.SharePointCommand("UPDATE MyCustomList SET Location='Chapel Hill' WHERE Id = @myId", $conn)
$cmd.Parameters.Add(new System.Data.CData.SharePointParameter("myId","10456255-0015501366"))
$cmd.ExecuteNonQuery()
$cmd = New-Object System.Data.CData.SharePointCommand("UPDATE MyCustomList SET Location='Chapel Hill' WHERE Id = @myId", $conn)
$cmd.Parameters.Add(new System.Data.CData.SharePointParameter("myId","10456255-0015501366"))
$cmd.ExecuteNonQuery()
CodeProject