1

助けを求めたい。Sharepointサービス(BDCサービス)にリモート接続し、BDCメタデータストアで更新を行うコードを作成する必要があります。msdnで私はこのサンプルを見つけました:

using (SPSite site = new SPSite("http://ssdk-server/Pages/Default.aspx"))
{
    using (new Microsoft.SharePoint.SPServiceContextScope(SPServiceContext.GetContext(site)))
    {
         BdcService service = SPFarm.Local.Services.GetValue<BdcService>(String.Empty);
         IMetadataCatalog catalog = service.GetDatabaseBackedMetadataCatalog(SPServiceContext.Current);

         IEntity entity = catalog.GetEntity("http://ssdk-server/sdksamples", "Customer");
         ILobSystemInstance LobSysteminstance = entity.GetLobSystem().GetLobSystemInstances()[0].Value;


         IView createView = entity.GetCreatorView("Create");
         IFieldValueDictionary valueDictionary = createView.GetDefaultValues();
         valueDictionary["Name"] = "some name";
         Identity id = entity.Create(valueDictionary, LobSysteminstance);
     }
 }

しかし、これは例外を除いて最初の行にスローされます:

FileNotFoundException (The Web application at http://sharepoint/ could not be found. Verify that you have typed the URL correctly. If the URL should be serving existing content, the system administrator may need to add a new request URL mapping to the intended application.). 

同じ問題が見つかりましたが、提案された解決策(プロジェクト設定フレームワークを3.5に変更し、プラットフォームをx64に変更)は役に立ちません。

誰かが私に言うことができますか、それはリモートでBDCサービスに接続し、メタデータストレージにデータをロードする可能性がありますか?もしそうなら、私はそれをどのように行うことができますか?

4

1 に答える 1

1

この方法でリモートSharePointサーバーに接続することはできません。クライアントコンテキストを使用する必要があります

例えば:

    string siteUrl = "http://MyServer/sites/MySiteCollection";

    ClientContext clientContext = new ClientContext(siteUrl);
    Web oWebsite = clientContext.Web;
    ListCollection collList = oWebsite.Lists;

    clientContext.Load(collList);

    clientContext.ExecuteQuery();

    foreach (SP.List oList in collList)
    {
        Console.WriteLine("Title: {0} Created: {1}", oList.Title, oList.Created.ToString());
    }

ここで他の例を見つけることができます

于 2012-10-08T09:04:30.463 に答える