I have a provider-hosted app running in Azure and the corresponding SharePoint app with an endpoint pointing to the Azure site. The app is responsible for parsing an atom feed from a third site and placing it into a SharePoint list. this all works perfectly so far. The only problem is that I have to either put the configuration settings into a SharePoint list manually of fill out a form each time I run the app to "tell it" where to get the atom feed from.

I have tried to search for help but I cannot find the best way to solve this problem.

Basically, I want to be able to configure the app when I'm installing it and keep the settings on the SharePoint side as I would like to be able to call the app from multiple site collections.

Update: Just to clear up some confusion, and ambiguity on my part. I would like it so that each user/admin that installs the app for their site collection can fill in the above details on installation and maybe even change them later(but I'll leave that for later). So the fact that a form needs to be filled out is fine, just not every time the app runs. Hope this makes my question clearer

What would be the best way to do this.

Thanks in advance.

  • Is the web.config of The App not a good place for this? – Sascha Jul 7 '14 at 18:19
  • Not really, I've edited the question as I saw that I was maybe a little unclear. I definitely want the info stored on the SharePoint side and in a list – Scubacode Jul 8 '14 at 7:53

Perhaps you can ask the user on the first startup for this configuration settings. You can select the List in SharePoint (where you stored the settings) if there is no entry in this list. the Settings will be asked from the user.

Otherwise you can take the stored setting from the list.

I think this will be a good solution.

I think on a installation process it's not possible to interact with the user.

  • Ok so what you're saying is make the app do a check on the list and if it's empty, have some sort of pop up asking on for info? Nice, I like it – Scubacode Jul 8 '14 at 8:05
  • yes that is what i mean. – Sascha Jul 8 '14 at 8:18

If you app's configuration is in the app web, then you will need to code an App Installing event receiver to populate the configuration store.

Personally, I would store the configuration outside of the app. (Perhaps web.config of the provider-hosted app or a database.)

  • Is this really an answer? I would think it's more of a comment... It's working fine with the config data in a list. The question is how do I make it so it only asks for this when it's installed or when it runs the first time. I cannot have it in the Azure app as it won't work for multiple "installations" – Scubacode Jul 8 '14 at 7:55
  • "asks when it's installed" requires an App Installing Event Receiver. (That is why I created an answer instead of a comment.) – Paul Schaeflein Jul 8 '14 at 15:15
  • ok granted that is true. just to be clear, an event receiver on SharePoint. can this be packaged with the app or is it separate? and in the web.config of the app or a database is not a possibility – Scubacode Jul 9 '14 at 13:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.