I am writing an application that allows multiple companies to use the application, I was planning on using the Applications table to hold the company names and so allow for example, two seperate companies to have users with the same user name, this would also allow me to use the multiple built in membership classes. But I just found this on the microsoft site, so I am presuming this is not a good idea. Is there an alternative to this?
Because a single default membership provider instance is used for all of the requests served by an HttpApplication object, you can have multiple requests executing concurrently and attempting to set the ApplicationName property value. The ApplicationName property is not thread safe for multiple writes, and changing the ApplicationName property value can result in unexpected behavior for multiple users of an application. We recommend that you avoid writing code that allows users to set the ApplicationName property, unless you must. An example of an application where setting the ApplicationName property may be required is an administrative application that manages membership data for multiple applications. Such an application should be a single-user application and not a Web application.