Adding ASP.NET Web Application to SharePoint Virtual Directory (for SPContext)
-
09-12-2019 - |
Question
I'm inheriting an ASP.NET application that is hosted within the IIS SharePoint web site. From IIS, right click the Web Site, and click 'Add Application' is the method used here.
In our dev server, where the 'owner' of the application set it up, SPContext is being populated as we would expect. However, in production, SPContext is null.
I have also created my own test SharePoint Web Application, and I added a standard Visual Studio ASP.NET Web App into this to test the SPContext issue...Unfortunately SPContext is null.
DEV Server
Existing App : SPContext != null
Test App : SPContext == null
Prod Server
Existing App : SPContext == null
Test App : SPContext == null
What am I missing that it takes to get SPContext populated? I've tried SPContext.GetContext(HttpContext.Current), but SPContext.Web is null then. Ideas?
Solution
Immediately after posting this, I had an idea. None of the web applications that are failing have a "Root" site collection. Technically there is no such thing as a root site collection, but I created one in the Prod Server > Existing App (at the '/' managed path) and things magically started working.
So it seems that SPContext somehow is defaulting to WebApplication.Sites[0]