Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles / web / ASP.NET

Modifying WebConfig File programmatically

4.17/5 (6 votes)
10 Oct 2012CPOL 21.7K  
This article describes how to modyfy the webconfig file of a SharePoint site

Introduction

While working in SharePoint, I know the difficulties a developer face due to security issues. Here is a simple example how to modify your SharePoint web config file programmatically.

Background

If you are using some external DLL ( third party DLLs) then you may need to modify the "trust level" from wss_minimal to full. In that case you may want to do it programmatically insted of doing this manually.

Here is the code spinet for achieving this task.

Using the code

First of all I am doing all these things in feature activate of the feature.

Just put the following code in your feature activation block.
C#
//
 // Gets the current webapplication from feature properties.                    

   SPWebApplication webApp = properties.Feature.Parent as SPWebApplication;  

   // Declairs the webConfigmodification variable.

   SPWebConfigModification myModification = newSPWebConfigModification("level", "configuration/system.web/trust");

   //Gets a collection of web config modification.

   System.Collections.ObjectModel.Collection<SPWebConfigModification> allModifications = webApp.WebConfigModifications;

 

         myModification.Value = "Full";

         myModification.Owner = "TapanKumar";

         myModification.Sequence = 1;    

         myModification.Type = SPWebConfigModification.SPWebConfigModificationType.EnsureAttribute; 

         allModifications.Add(myModification); // Add the modifications.

 

   SPFarm.Local.Services.GetValue<SPWebService>().ApplyWebConfigModifications();

   webApp.Update(); // Update the Web application.
//

Remember this will work for the whole SPFarm.  If you want it for a single site only then use SPSite insted of SPFarm

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)