Même si je pense qu'il est une mauvaise idée de mettre les informations d'identification d'un utilisateur dans une URL (tout le monde pourra le voir en regardant la source HTML de la page), voici comment vous pouvez accomplir ce que vous voulez faire:
Créez un nouveau projet de bibliothèque de classes avec une classe qui hérite de Microsoft.SharePoint.WebPartPages.WebPartPage
. Quelque chose comme:
namespace MyNameSpace.WebPagePages
{
public class MyWebPartPage : Microsoft.SharePoint.WebPartPages.WebPartPage
{
protected Microsoft.SharePoint.WebPartPages.PageViewerWebPart myPageViewerWebPart;
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
// logic to create your URL
string url = "http://blah/blah";
// set the URL
myPageViewerWebPart.ContentLink = url;
}
}
}
Vous devrez signer l'assembly et le déployer dans le GAC. L'utilisation de SharePoint Solution (WSP) est la méthode recommandée pour ce faire (mais pas le but de cette réponse).
Vous devez maintenant modifier la page ASPX contenant votre partie Web comme suit:
- Modifier l'attribut
Inherits
de la directive <%@ Page %>
au nom complet du type de la classe ci-dessus. Il ressemblera à quelque chose comme: MyNameSpace.WebPagePages.MyWebPartPage, MyNameSpace.WebPagePages, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = b538f318242c0b01
- Donnez la partie Web un attribut
ID
avec une valeur qui correspond au nom de la partie Web dans la classe code-behind. Dans cet exemple: <WebPartPages:PageViewerWebPart runat="server" ID="myPageViewerWebPart">
Cela devrait le faire. Si vous ne l'avez pas déjà fait, la création de la classe et son déploiement dans le GAC seront des étapes difficiles, mais elles sont faciles quand vous savez comment. Des outils comme VSeWSS, STSDEV et WSPBuilder (apprenez-en un d'abord puis essayez les autres) vous aideront à réaliser ceci en créant des fichiers WSP (SharePoint Solutions) - quelque chose dont je vous recommande vivement de profiter.
Est-ce que sharepoint renvoie l'erreur, ou AsP? –
Sharepoint attrape cette erreur et l'affiche avec le style de partage commun ... –
Créez-vous l'URL dynamiquement? Si vous êtes, où mettez-vous le code pour créer l'URL? – dariom