PrepAway - Latest Free Exam Questions & Answers

What should you do?

You create a Web Part that takes three values from three text boxes and creates a new SharePoint site when you click a button named CreateNewSite.

The Web Part contains the following code segment.

protected void CreateNewSite_Click(object sender, EventArgs e)
{
SPSite site = SPContext.Current.Site;
SPWeb web = site.AllWebs.Add(SiteNameTextBox.Text, SiteTitleTextBox.Text, SiteDescriptionTextBox.Text, 0, SPWebTemplate.WebTemplateSTS, false, false);
}

You test the Web Part and it works properly.

When another user attempts to use the Web Part to create a new site, he receives the following error message: “Error: Access Denied.”

You need to ensure that users can use the Web Part to create new sites.

What should you do?

PrepAway - Latest Free Exam Questions & Answers

A.
Add web.Update() after the code segment.

B.
Add web.ValidatesFormDigest() after the code segment.

C.
Run the code segment inside a SPSecurity.RunWithElevatedPrivileges delegate.

D.
Add the following code after the code segment:
SPUser currentUser = System.web.CurrentUser;
web.Users.Add(currentUser.LoginName, currentUser.Email, currentUser.Name, “”);

Explanation:
MNEMONIC RULE: “Access Denied = RunWithElevatedPrivileges”

SPSecurity.RunWithElevatedPrivileges Method
http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spsecurity.runwithelevatedprivileges.aspx


Leave a Reply