0

私は共有ポイントファイルのストリームを取得する必要があります。そのためには、共有ポイントファイルのURLがあります。ダイナミックcrmプラグインの共有ポイントファイルURLからファイルストリームを取得する方法は?

https://mysite.sharepoint.com/sites/documents/contact/test/Beat01_07262017.pdf

私は、CRM Onlineのプラグインの中から(CSOMを使用して)のSharePoint Onlineに接続しようとしています。そのためには、SharePoint ClientとClient.Runtime DLLをilmerge.exeでプラグインDLLにマージしました。しかし、すぐに次のコードのように:

ClientContext clientContext = new ClientContext(server); 
clientContext.Credentials = new SharePointOnlineCredentials(UserId, Password); // This line throws an below exception: 

タイプ の許可の要求「System.Security.Permissions.RegistryPermission、mscorlib、 バージョン= 4.0.0.0、文化=中立、なPublicKeyToken = b77a5c561934e089 " が失敗しました。

これを動作させる方法はありますか?

私はSharePoint Integration from CRM Online Workflow/Pluginでチェックが、それは 作業と

例外として、以下のエラーを取得して取得することができなかった:呼び出しのターゲットが例外をスローされました。

System.RuntimeMethodHandle.InvokeMethodにスタックトレース System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternalで (オブジェクトobj、 オブジェクト[]パラメータ(オブジェクト・ターゲット、[] 引数、署名SIG、ブールコンストラクタオブジェクト)オブジェクト[]引数)System.Delegate.DynamicInvokeImplで (オブジェクト[]引数)Microsoft.Xrm.Sdk.Linq.QueryProvider.DynamicInvokeで (委任プロジェクト、 オブジェクト[]引数)Microsoft.Xrmで 。 Sdk.Linq.QueryProvider.TranslateExpressionToConditionValue(式 EXP、ParameterExpression []パラメータ)Microsoft.Xrm.Sdk.Linq.QueryProvider.TranslateWhereCondition(BinaryExpressionを で 、ことFilterExpressionWrapper parentFilter、のFunc 2れるgetFilter、のFunc 2 getLinkLookup、ブールネゲート) Microsoft.Xrm.SdkでMicrosoft.Xrm.Sdk.Linq.QueryProvider.TranslateWhereBoolean(文字列 ParameterNameが、式で.Linq.QueryProvider.TranslateWhere(文字列 ParameterNameが、BinaryExpressionをすること、FilterExpressionWrapper parentFilter、のFunc 2れるgetFilter、リスト1 linkLookups、ブール ネゲート) exp、FilterExpressionWrapper parentFilter、 Func 2 getFilter、List 1 linkLookup Microsoft.Xrm.Sdk.Linq.QueryProviderでMicrosoft.Xrm.Sdk.Linq.QueryProvider.TranslateWhere sで、BinaryExpressionを親、ブール 否定) (のQueryExpression QE、文字列ParameterNameが、式exp、リスト1 linkLookups) 。GetQueryExpression(式 式、ブール& throwIfSequenceIsEmpty、ブール& throwIfSequenceNotSingle、投影&投影、 NavigationSource &ソース、リスト1 & linkLookups)Microsoft.Xrm.Sdk.Linq.QueryProvider.Execute [TElement](式 式で System.Linq.Queryable.FirstOrDefault [TSOURCE(のIQueryable 1 ソース) 0123でMicrosoft.Xrm.Sdk.Linq.QueryProvider.System.Linq.IQueryProvider.Execute [TResult](式 式) で) CRMPluginProject1._365ImmoでCRMPluginProject1._365Immo.Laurus.SharePoint.DocumentLocationHelper.GetDocumentLocationPath(SharePointDocumentLocation parentLocation)CRMPluginProject1._365Immo.Laurus.SharePoint.DocumentLocationHelper.CreateDocumentLocation(エンティティ サイト、文字列documentLibraryName、実体参照 regardingRecord)で で.Laurus.Plugins.GetSharePointFile.Execute(IServiceProvider サービス・プロバイダ)

内部例外:原因の作成中に撮影したコードアクセスセキュリティ情報に失敗した 需要が匿名でを開催しました動的方法。この操作を成功させるには、メソッドが作成された時点で要求が成功したことを確認してください( )。 については、http://go.microsoft.com/fwlink/?LinkId=288746を参照してください。

スタックトレース:lambda_method(閉鎖)

答えて

1

でSharePointクライアントライブラリは明らかに、Windowsのレジストリにアクセスする必要があります。サンドボックスCRMプラグインでは許可されていません。

サンドボックスプラグインでは、コードはhttpまたはhttpsプロトコルを使用してウェブ上のリソースにのみアクセスできます。 (IPアドレスも許可されていません)

+0

私は共有ポイントからファイルにアクセスする必要があります。どうすればそれを達成できますか? CRMからSharepointへのファイルのアップロードでは、第三者Addonを使用して、ファイルURLを返します。 "https://mysite.sharepoint.com/sites/documents/contact/test/Beat01_07262017.pdf" –

関連する問題