Posts

Showing posts from August, 2013

Visual Studio 2012: No exports were found that match the constraint contact name

To fix this problem, simply clear/detete/rename %AppData%\..\Local\Microsoft\VisualStudio\11.0\ComponentModelCache

Prevent field validators from firing when editing a web part

I have a simple visual web part with a RequiredFieldValidator. The only problem is that when the web part properties are set, a postback is fired and the validator is complaining. The net result is that I cannot make any configuration changes to the web part. The following code will resolve this problem:     protected override void OnPreRender(EventArgs e)         {             WebPartManager mgr = WebPartManager.GetCurrentWebPartManager(Page);             if (mgr.DisplayMode.Equals(mgr.SupportedDisplayModes["Browse"]))             {                 myValidator.Enabled = true;             }             else             {                 myValidator.Enabled = false;             }             base.OnPreRender(e);         }

SharePoint Designer Web Cache

The web cache for SharePoint Designer sometimes causes problems and needs to be cleared. I was having this problem when adding a custom workflow activity (see  here  for the blog I used). I found this blog ( here ) with the following script to clear the cache. It certainly saved me a lot of pain. cd "%APPDATA%\Microsoft\Web Server Extensions\Cache" del *.web /S /Q "%APPDATA%\Microsoft\Web Server Extensions\Cache" cd "%USERPROFILE%\AppData\Local\Microsoft\WebsiteCache\" rmdir /S /Q "%USERPROFILE%\AppData\Local\Microsoft\WebsiteCache\." mkdir "%USERPROFILE%\AppData\Local\Microsoft\WebsiteCache" dir "%APPDATA%\Microsoft\Web Server Extensions\Cache" dir "%USERPROFILE%\AppData\Local\Microsoft\WebsiteCache" pause

Powershell does not resolve dynamic variables

I have been working diligently on a script to create Sharepoint groups in Powershell. It sounds easy enough until you have to create iterated allocations. For example, a group needs to be allocated permissions to multiple lists. This is where the fun starts: My code was as follows: For($i=0; $i -lt $scopes.Length; $i++) { if (($scopes[$i] -ne $null) -and ($scopes[$i] -ne "")) { $list = $web.Lists["$scopes[$i]"] if ($list.HasUniqueRoleAssignments -eq $false) { $list.BreakRoleInheritance($true) $list.Update() } $list.RoleAssignments.Add($assignment) $list.Update() } It compiles and runs, but I was getting a lot of error messages about unassigned variables in the RoleAssignment addition. Very frustrating. The problem was traced to $list = $web.Lists["$scopes[$i]"] Powershell will not resolve the 'inner" variable, which cause the lookup to return a null value. The solution was simple. Put the value in a v

SharePoint 2013: UserAgent not available, file operations may not be optimized

I encountered this problem after creating a new document library 'App'. After a little searching, I found the following code  to flush the BLOB cache   to resolve the problem. $webApp = Get-SPWebApplication "http://ihaveablobproblem.com" [Microsoft.SharePoint.Publishing.PublishingCache]::FlushBlobCache($webApp)

Find the field type enumerator for a Sharepoint field type in Powershell

I have been trying to add a new field to an SPWeb. It sounds simple enough, but it ended up being a little tricky. The problem came from the 'FieldType' column. After a little research, I found that the easiest way is to use the corresponding Integer from the FieldType enumerator (see here  for more details). I ended up with the following code that returns the corresponding enumerator for the '$fieldType'. For example, '$fieldType = Integer' returns 1. $int = [Convert]::ToInt32(( [Microsoft.SharePoint.SPFieldType]::GetValues([Microsoft.SharePoint.SPFieldType]) | Where-Object  { $_ -eq $fieldType })) I can now add fields the easy way. $web.Fields.Add("FieldName", $int, $CanIBeNullableOrNot)

Find the location of Central Admin in Sharepoint using Powershell

My current project requires creating a Taxonomy through the Metadata Service. The starting point for all this work is finding out where Central Administration lives. The following code will return the WebApplication details: $centralAdminWebApp = Get-SPWebApplication -includecentraladministration | where {$_.IsAdministrationWebApplication}

You cannot customize permission levels in a web site with inherited permission levels

The resolution to the problem is in the error message - the SPWeb has inherited permission levels that need to be overridden. The following code will solve the problem. if (!web.IsRootWeb && !web.HasUniqueRoleDefinitions) {     web.RoleDefinitions.BreakInheritance(true, false); }