IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SharePoint .NET Discussion :

Foundation - Crawl une entite BCS avec gestion d'acces par element [SP-2013]


Sujet :

SharePoint .NET

  1. #1
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 486
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 486
    Points : 2 082
    Points
    2 082
    Par défaut Foundation - Crawl une entite BCS avec gestion d'acces par element
    Bonjour,

    SP2013 Foundation

    J'utilise une entite BCS developpee sous VS, mappee vers une table SQL, les methodes Finder et SpecificFinder fonctionnent.
    Cette entite est crawlee par le moteur de recherche sans erreur.
    Je cherche maintenant un moyen de realiser un trimming de chaque occurrence dans ma table par permissions d'acces.

    J'ai teste deux methodes.
    La premiere etant de precalculer les ACL, les stocker dans une colonne VARBINARY, et de mapper ce champ comme WindowsSecurityDescriptorField dans le SpecificFinder.
    Je crawl sans erreurs et les resultats correspondent bien aux ACL assignees. Seulement voila j'aimerais eviter de devoir le stocker en base.

    J'essaie une deuxieme piste qui consiste a definir une methode de mon modele ayant un role de BinarySecurityDescriptorAccessor.
    En gros, a part les namespace, un copier coller du lien suivant et l'implementation qui va bien.
    https://msdn.microsoft.com/en-us/lib..._ExtTypeMethod

    Au moment du crawl j'ai un nombre d'erreurs egal au nombre d'elements dans ma table.
    Error caused by exception: Microsoft.BusinessData.MetadataModel.InvalidMetadataObjectException Cannot unambiguously find Method with name 'GetItemSecurity'.; SearchID = B26A2036-3CC8-405D-8F67-0BB51A7B6D63
    Avez-vous rencontre ce probleme et auriez vous une idee pour le resoudre ?

    D'avance merci

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 486
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 486
    Points : 2 082
    Points
    2 082
    Par défaut
    Probleme resolu.

    Vu l'erreur et suspectant fortement un probleme au niveau de la definition XML suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    ....
    <Method Name="GetItemSecurity">
      <Parameters>
    	<Parameter Name="Return" Direction="Return">
    	  <TypeDescriptor Name="SecurityDescriptor" TypeName="System.Byte[], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" IsCollection="true">
    		<TypeDescriptors>
    		  <TypeDescriptor Name="Item" TypeName="System.Byte, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
    		</TypeDescriptors>
    	  </TypeDescriptor>
    	</Parameter>
    	<Parameter Name="id" Direction="In">
    	  <TypeDescriptor Name="id" TypeName="System.Int32" 
    					  IsCollection="false" IdentifierName="id"
    					  IdentifierEntityNamespace="BDCModelMgd.BdcModel1"
    					  IdentifierEntityName="Contact" /></Parameter>
      </Parameters>
      <MethodInstances>
    	<MethodInstance Name="GetItemSecurity_Instance" Type="BinarySecurityDescriptorAccessor" ReturnParameterName="Return" ReturnTypeDescriptorName="SecurityDescriptor" ReturnTypeDescriptorLevel="0">
    	  <Properties>
    		<Property Name="WindowsSecurityDescriptorField" Type="System.String">SecurityDescriptor</Property>
    	  </Properties>
    	</MethodInstance>
      </MethodInstances>
    </Method>
    ....
    Le nom de la methode et celui de la methodInstance ne correspondait pas... tout betement.
    Difficile de dire si c'est a cause de l'assitant de creation de VS ou pas, quoi qu'il en soit un point supplementaire de verification pour les developpements BCS.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 08/04/2013, 12h58
  2. Réponses: 4
    Dernier message: 05/05/2012, 12h57
  3. [SP-2010] [FOUNDATION] Filtrer une liste externe avec utilisateurs
    Par oshyso dans le forum SharePoint
    Réponses: 6
    Dernier message: 08/12/2011, 16h25
  4. [EF] Lier une entité juste avec son Id
    Par anthyme dans le forum Accès aux données
    Réponses: 6
    Dernier message: 26/11/2008, 10h28
  5. Réponses: 7
    Dernier message: 23/08/2006, 16h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo