Advertisement
private775

Sharepoint: PowerShell fake SPContext

Apr 28th, 2015
456
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. # taken from: http://troyvssharepoint.blogspot.com/2012/08/faking-spcontext-in-powershell.html
  2.  
  3. function Ensure-HttpContext([string]$url)
  4. {
  5.     $sw = New-Object System.IO.StringWriter
  6.     $resp = New-Object System.Web.HttpResponse $sw
  7.     $req = New-Object System.Web.HttpRequest "", $url, ""
  8.     $htc = New-Object System.Web.HttpContext $req, $resp
  9.     [System.Web.HttpContext]::Current = $htc
  10. }
  11.  
  12. function Ensure-SPContext([string]$url)
  13. {
  14.     Ensure-HttpContext $url
  15.  
  16.     if(![System.Web.HttpContext]::Current.Items["HttpHandlerSPWeb"] -or
  17.      ![System.Web.HttpContext]::Current.Items["HttpHandlerSPSite"])
  18.     {
  19.         [Microsoft.SharePoint.SPWeb]$web = Get-SPWeb $url
  20.         [System.Web.HttpContext]::Current.Items["HttpHandlerSPWeb"] = $web
  21.         [System.Web.HttpContext]::Current.Items["HttpHandlerSPSite"] = $web.Site
  22.     }
  23. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement