We have a strict policy against using WCF due to the complexity of how to configure them. The problem we have experienced with WCF is that as the size of our database grew the WCF's started to fail left and right. Sometimes we could fix them by maximizing certain settings in the web.config but ultimately we ended up getting rid of all WCF.
What would be nice to have is an API that uses a connection string to communicate with the database. It would be really fantastic if perhaps a constructor could be used to specifiy the connectionstring name. This way we could create multiple instances of the API with each one communicating with a different Sitefinity application.
Below is how I would I like it to work. In this case "PublicWebsite" would be the name of a connection string stored in the web.config.
App = New App("PublicWebsite");
var blog = App.WorkWith().Blog().CreateNew().SaveChanges();
1. Is this something that Sitefinity would ever consider?
2. I'm thinking of creating SQL views on the Sitefinity database so I can query it from other applications. This approach appears to be my only option (since WCF is forbidden in our company). How bad is this approach if I only use it for reading data?