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

Développement Sharepoint .NET Discussion :

Utiliser deux dll différentes dans une page aspx


Sujet :

Développement Sharepoint .NET

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 22
    Points : 21
    Points
    21
    Par défaut Utiliser deux dll différentes dans une page aspx
    Bonjour,

    Je suis coincé sur quelque chose qui me semble tout bête, mais dont je ne me dépatouille pas. Je suis débutant dans le monde du dev .net et SharePoint
    Je cherche à pouvoir utiliser deux dll différentes dans une même page.

    Si je veux utiliser une seule dll, pas de problème:
    Je la pose dans le répertoire bin, j'ajoute la ligne qu'il faut dans le web.config:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <SafeControl Assembly="la_dll, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b5e35ba7cb2ba9f4" Namespace="la_dll" TypeName="*" Safe="True"/>
    puis dans la page aspx j 'ajoute:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <%@ Page language="C#"  MasterPageFile="~masterurl/default.master" inherits="la_dll.FonctionsGlobales" %>
    Le problème, c'est que je n'arrive pas ajouter une deuxième dll.
    si je met un deuxième inherits, une erreur s'affiche pour cause de multiple inherits dans la directive page.

    J'ai essayé en mettant plutôt les lignes suivantes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <%@ Assembly Name="la_dll, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b5e35ba7cb2ba9f4" %>
    <%@ Import Namespace="la_dll" %>
    Pas d'erreur, mais par contre pas moyen d'appeler la fonction contenu dans ma classe FonctionsGlobales sans faire planter la page à la compilation.
    J'ai essayé en tapant ma_dll.FonctionsGlobales.LaFonction();
    ou FonctionsGlobales.LaFonction(); ou bien encore LaFonction(); dans la méthode protected void Page_Load() {...}.

    Quelqu'un aurait-il une petite idée ?

    Merci par avance !

  2. #2
    Membre du Club
    Inscrit en
    Février 2011
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 41
    Points : 62
    Points
    62
    Par défaut
    Bonjour,

    En effet, il semble que vous débutiez
    C'est très compliqué de commencer par SharePoint sans passer par la case asp.net...
    Je vous conseille d'abord de suivre quelques tutos sur : http://www.asp.net/web-forms

    Pour répondre à votre question :
    L'attribut "inherits" spécifie que le code behind de la page se situe dans une classe.
    Pour utiliser une 2ème DLLs, dans le code (C#) de la page (c'est à dire dans la classe spécifiée par l'attribut inherits), faites simplement référence à la dll dans le projet Visual Studio...

    Bref, commencez par asp.net avant d'être totalement perdu

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 22
    Points : 21
    Points
    21
    Par défaut
    Merci pour votre réponse,

    Oui le gif correspond bien à ce que fais parfois!

    Je me suis armé de livres, sur .net 3.5 et SharePoint, j'essaie de pousser les deux en même temps. D'où mes questions peut être farfelues.

    Le hic avec VS, c'est que je peux pas déployer du code dans SharePoint, sans passer par la production d'une feature ou d'un custom control.

    Pour le moment je travaille beaucoup en code inline, ce que j essaye de faire de moins en mois. Du coup je suis passé par la production d une dll qui contient toutes mes fonctions récurrentes.

    Cependant j aurais aimé faire plusieurs dlls.
    D'où ma question.

    Ajouter une référence à un projet VS, ca j avais bien saisi le concept.
    Sauf que je ne peux pas éditer une page de SharePoint autrement qu'avec SP Designer.

    Le problème aurait pu être résolu en spécifiant une page source .cs faisant référence aux dlls via un using, mais les pages SharePoint n'apprécient pas la directive CodeFile.

    Peut être que deployer les dll dans le GAC et les appeler par un <%@ import namespace pourrait marcher, mais je ne souhaite pas déposer mes dll dans le GAC.

    Vous n'auriez pas d'autres solutions que de passer par VS pour référencer une deuxième dll dans une page aspx ?

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 22
    Points : 21
    Points
    21
    Par défaut
    Bonjour,

    J'ai résolu mon problème.
    Pour utiliser une dll sans passer par la directive inherits, il faut donc bien placer les lignes <@ Assembly ...> et <@ Import ... >

    L'appel des méthodes de la classe différe simplement.
    Avec un inherits pas besoin d'instancer la classe.
    Sans inherits, c'est un problème de référence qui survient.
    C'est en parcourant les logs du serveur, que je me suis aperçu de ce problème.
    Il faut donc instancer la classe puis appliquer la méthode sur l'objet créé.

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

Discussions similaires

  1. Utiliser $(document).ready dans une page aspx
    Par Olivier782 dans le forum ASP.NET
    Réponses: 1
    Dernier message: 09/11/2011, 15h22
  2. Controle utilisable dans une page aspx
    Par lutecefalco dans le forum Silverlight
    Réponses: 7
    Dernier message: 30/06/2010, 22h27
  3. Réponses: 6
    Dernier message: 11/06/2010, 17h14
  4. Deux formulaires différents dans une même page
    Par zabdaniel dans le forum Langage
    Réponses: 3
    Dernier message: 14/01/2008, 20h31
  5. Réponses: 2
    Dernier message: 22/08/2006, 11h28

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