I know that this user has already solved his problem, but for others they are looking for an answer. This post is not perfect, but it will tell you what you need to solve this problem.
With asp.net, GetMachineStoreForAssembly seems to work in most cases, and this is probably the desired mode when using isolated storage from a web application. Because even if you use GetUserStoreForAssembly, it will be isolated by the user account that launches the asp.net application, and it will always be the same for each user of the website, if you do not somehow associate each login with a Windows user (oh, and if you are doing this, then it will work).
The problem is that you are trying to use GetUserStoreForAssembly, because for this you need a user with rights to isolated storage, the default IIS user for applications does not get rights to this, I think.
There are 2 solutions:
use GetMachineStoreForAssembly
If you must use GetUserStoreForAssembly, install the application to run with user rights. This is not allowed by folder permissions. There are several ways to configure security. (IIS7). You can install it in the application pool or under the basic settings> "Connect as" or "Authentication"> "Anonymous Authentication". I don’t know exactly what rights the user needs, but it will help you move in the right direction.
Here is the bonus code that can help you figure out your problem:
Dim storageFile As IsolatedStorageFile If Request("storage") = "user" Then storageFile = IsolatedStorageFile.GetUserStoreForAssembly() Else storageFile = IsolatedStorageFile.GetMachineStoreForAssembly() End If Response.Write(storageFile.GetType.GetField("m_RootDir", Reflection.BindingFlags.NonPublic Or Reflection.BindingFlags.Instance).GetValue(storageFile).ToString())
GetUserStoreForAssembly is here: C: \ Documents and Settings \ Gabe \ Local Settings \ Application Data \ IsolatedStorage \
GetMachineStoreForAssembly is here: C: \ Documents and Settings \ All Users \ Application Data \ IsolatedStorage \
Gabe
source share