0

J'ai l'obligation d'obtenir le flux de fichiers du fichier de point de partage, pour ce que j'ai URL de fichier de point de partage.Comment obtenir le flux de fichier à partir de l'URL du fichier sharepoint dans le plugin crm dynamique?

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

Je suis en train de se connecter à SharePoint Online (en utilisant CSOM) à partir d'un plug-in dans CRM Online. Pour que cela fonctionne, j'ai fusionné les DLL Client Client et Client.Runtime avec ilmerge.exe dans ma DLL plugin. Mais dès que le code suivant:

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

Demande d'autorisation de type « System.Security.Permissions.RegistryPermission, mscorlib, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089 ' a échoué.

Y at-il un moyen de le faire fonctionner?

J'ai vérifié avec SharePoint Integration from CRM Online Workflow/Plugin mais pas en mesure de le faire fonctionner et obtenir l'erreur comme ci-dessous

Exception: Exception a été levée par la cible d'un appel.

Trace de pile à System.RuntimeMethodHandle.InvokeMethod (objectif de l'objet, l'objet [] arguments, Signature sig, constructeur Boolean) à System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal (objet OBJ, objet [] paramètres, Object [] arguments) à System.Delegate.DynamicInvokeImpl (Object [] args) à Microsoft.Xrm.Sdk.Linq.QueryProvider.DynamicInvoke (projet délégué, Object [] args) à Microsoft.Xrm. Sdk.Linq.QueryProvider.TranslateExpressionToConditionValue (Expression exp, ParameterExpression [] paramètres) à Microsoft.Xrm.Sdk.Linq.QueryProvider.TranslateWhereCondition (BinaryExpression soit, FilterExpressionWrapper parentFilter, Func 2 getFilter, Func 2 getLinkLookup, négation booléenne) à Microsoft.Xrm.Sdk .Linq.QueryProvider.TranslateWhere (String parameterName, BinaryExpression être, FilterExpressionWrapper parentFilter, Func 2 getFilter, liste 1 linkLookups, Boolean opposé) à Microsoft.Xrm.Sdk.Linq.QueryProvider.TranslateWhereBoolean (String parameterName, expression exp, FilterExpressionWrapper parentFilter, Func 2 getFilter, Liste 1 lienLookup s, parent BinaryExpression, Boolean opposé) à Microsoft.Xrm.Sdk.Linq.QueryProvider.TranslateWhere (QueryExpression qe, String parameterName, expression exp, liste 1 linkLookups) à Microsoft.Xrm.Sdk.Linq.QueryProvider .GetQueryExpression (Expression expression booléenne & throwIfSequenceIsEmpty, Boolean & throwIfSequenceNotSingle, Projection & projection, & NavigationSource source, liste 1 & linkLookups) à Microsoft.Xrm.Sdk.Linq.QueryProvider.Execute [TElement] (Expression expression) à Microsoft.Xrm.Sdk.Linq.QueryProvider.System.Linq.IQueryProvider.Execute [TResult] (expression expression) à System.Linq.Queryable.FirstOrDefault [TSource] (IQueryable 1 source) à CRMPluginProject1._365Immo.Laurus.SharePoint.DocumentLocationHelper.GetDocumentLocationPath (SharePointDocumentLocation parentLocation) à CRMPluginProject1._365Immo.Laurus.SharePoint.DocumentLocationHelper.CreateDocumentLocation (site de l'entité , String DocumentLibraryName, EntityReference regardingRecord) à CRMPluginProject1._365Immo .Laurus.Plugins.GetSharePointFile.Execute (IServiceProvider serviceProvider)

Exception interne: la demande a échoué en raison des informations de sécurité d'accès au code capturé lors de la création d'un anonyme hébergé méthode dynamique. Pour que cette opération aboutisse, assurez-vous que la demande aurait réussi au moment de la création de la méthode. Voir http://go.microsoft.com/fwlink/?LinkId=288746 pour plus d'informations .

Stack Trace: à lambda_method (fermeture)

Répondre

1

La bibliothèque client SharePoint a besoin apparemment l'accès au registre Windows. Ceci n'est pas autorisé dans les plugins CRM en sandbox. Dans les plugins en mode bac à sable, le code est uniquement autorisé à accéder aux ressources sur le Web à l'aide du protocole http ou https.

(Les adresses IP ne sont pas autorisées non plus.)

+0

J'ai besoin d'accéder au fichier depuis le point de partage. comment puis-je y arriver? Pour télécharger le fichier de CRM vers Sharepoint, j'ai utilisé l'extension tierce et je renvoie l'URL du fichier. comme "https://mysite.sharepoint.com/sites/documents/contact/test/Beat01_07262017.pdf" –