| hicham's profilehicham Boutaleb <C'est ...PhotosBlogNetwork | Help |
|
|
June 30 HOW CAN YOU DEBUG YOUR WEB PARTSWhenever an error occurs in a web part, Microsoft Office SharePoint Server 2007 shows a generic error message. If June 12 [MOSS 2007]Afficher des messages d'erreur explicitesAu cours de la mise en place de l' authentification par formulaire "Forms Authentication" comme publié sur le blog de Gael Duhamel,j'ai eu un petit soucis sur mon Appli dont je ne connais pas la source exactement,et après une longue discussion avec Gael il m'a proposer une astuce qui m'a permet de bien identifier mon problème,et que je veux partager avec vous afin d'afficher des messages explicites sur vos erreurs au lieu d' avoir une description standard de ce type: Unknown Error
donc vous n'avez qu'a modifier le Web.config de votre application sharepoint située dans Lecteur Local:\Inetpub\wwwroot\wss\VirtualDirectories\[repertoire du site] (par exemple 84) ,chercher l'entrée "CallStack" et modifier son statut a "true" pour afficher la pile des erreurs: <SafeMode MaxControls="200" CallStack="true" DirectFileDependencies="10" TotalFileDependencies="50" AllowPageLevelTrace="false"> En suite vous devez modifier l'entrée "CustomErrors" pour afficher les messages d'erreurs: <customErrors mode="Off" /> [MOSS 2007]Both Windows SharePoint Services Usage logging and Office SharePoint Usage Processing must be enabled to view usage reports.Pour voir l'etat d'usage de votre site "Site Usage Reports",vous devez activer cette option dans votre environnement sharepoint en procedant par les etapes suivantes: 1-dans la barre a gauche du site d'administration sharepoint,sous "Shared Services Administration" cliquez sur votre SSP. 2-sur cet ecran et dans la rubrique "Office SharePoint Usage Reporting",cliiquez sur "Usage reporting" 3-En suite sur la page "Configure Advanced Usage Analysis Processing" cochez les 2 checkboxe comme le montre l'image ci-dessous:
comme ca vous pouvez acceder aux statistiques d'usage de votre : Adding Permission LevelsTo create your own combination of permissions to meet specific site management needs, you can
3. On the Site Settings page, in the Users and Permissions section, click the Advanced Permissions
4. On the Permissions page, click the Settings link to view the Settings menu.
6. If the current site is not the top-most site, a link will be available under See Also in the left
8. On the Add a Permission Level page, enter the following: NB:In my new permission level i selected all permissions. c. Once all of the necessary information has been entered, click the Create button. Web Part permettant d'uploader un fichier dans son liste des documents partagésdurant mes premiers pas sur sharepoint j'ai realisé un bout de code simple et intuitif qui me permet d'uploader un fichier dans ma liste des Documents Partagés: sing System; using System.Runtime.InteropServices; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml.Serialization; using System.Collections; using Microsoft.SharePoint.Administration; using Microsoft.SharePoint; using Microsoft.SharePoint.WebControls; using Microsoft.SharePoint.WebPartPages; using System.Net; using System.Net.Mail; namespace SharePoint.AspNetExample { [Guid("57edfdc6-361a-4813-a7f2-1e261c5ad48b")] public class NormalPart : System.Web.UI.WebControls.WebParts.WebPart { //le control d'uploade FileUpload _objFileUpload = new FileUpload(); protected override void CreateChildControls() { Controls.Add(_objFileUpload); Button btnUpload = new Button(); btnUpload.Text = "Save File"; this.Load += new System.EventHandler(btnUpload_Click); LiteralControl space = new LiteralControl(" "); Controls.Add(space); Controls.Add(btnUpload); LiteralControl backSpace = new LiteralControl("<br>"); Controls.Add(backSpace); } private void btnUpload_Click(object sender, EventArgs e) { this.SiteCollectionUrl = "url de votre site sharepoint"; using (SPSite objSite = new SPSite(SiteCollectionUrl)) { using (SPWeb objWeb = objSite.OpenWeb()) { SPList objList=null; foreach(SPList item in objWeb.Lists) { if (item.Title.Equals("Shared Documents"))//pour recuperer votre liste de documents partagés et faire attention si vous utiliser une version "francais" // de MOSS 2007 le nom sera "Documents partagés" objList=item; } //SPList objList = objWeb.Lists["Documents partagés"];//ListName]; if (_objFileUpload.HasFile) { objList.RootFolder.Files.Add(_objFileUpload.FileName,_objFileUpload.PostedFile.InputStream, true); } } } } private string _strSiteCollectionUrl; [Personalizable(PersonalizationScope.Shared), WebBrowsable(true), WebDisplayName("Site Collection URL"), WebDescription("Enter the URL of the site collection that contains the list a document is uploaded to")] public string SiteCollectionUrl { get { return _strSiteCollectionUrl; } set { _strSiteCollectionUrl = value; } } } } maintenant ne vous faut que configurer votre projet et deployer votre web part dans le GAC. N.B:sur cet article j'ai pas entamé la methode comment parametrer le projet sharepoint et deploiment. Rend un bloc de code transactionnelvous pouvez rendre tout un bout de code transactionnel avec l'objet "TransactionScope",au lieu de creer un objet transaction et l'affecté a chaque commande. voyons comment cet objet peut nous simplifier la vie en utilisation avec des commandes linq: using (System.Transactions.TransactionScope scope =new System.Transactions.TransactionScope()) { context.SubmitChanges(ConflictMode.ContinueOnConflict); scope.Complete(); } cette manip rend tout le code ecrit dans le bloc using transactionnel,et pas besoin d'utiliser try,catch,commit,rollback...,il suffit juste d'appeler la methode Complete() pour commiter si tous passe bien et rollback dans le cas echeant. autre interet,c'est qu'on peut gerer des transactions pour plusieurs objets connexion.plus d'info |
|
|