Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Understanding the levels of IsolatedStorageScope

The MSDN states:

  • None No isolated storage usage.
  • User Isolated storage scoped by user identity.
  • Domain Isolated storage scoped to the application domain identity.
  • Assembly Isolated storage scoped to the identity of the assembly.
  • Roaming The isolated store can be placed in a location on the file system that might roam (if roaming user data is enabled on the underlying operating system).
  • Machine Isolated storage scoped to the machine.
  • Application Isolated storage scoped to the application.

I have some trouble understanding what those levels mean in detail. This is what I can make of it (developing a Windows Form application):

  • User Storage location would change when a different Windows user starts the application
  • Domain What exactly is the domain domain identity and for what use case would this option be relevant?
  • Assembly How exactly does the assembly identify itself? The storage location seems to change with changing assembly version for example.
  • Roaming This would probably tell .NET to use the roaming data folder for the current user (if available). However, is probably requires some additional flags since it somehow has to know how to identify the application folder wise.
  • Machine Would the use of this be to share data between applications storing it in a "general" machine scope isolated storage?
  • Application How is this different from "Assembly"?

What would be the proper combination to store data specific to a Windows Forms application but assembly/file version independent to preserve data between updates?

A general explanation of all flags would be nice.

like image 394
Rev Avatar asked Oct 21 '14 11:10

Rev


1 Answers

I was looking for this too and eventually stumbled across this question, and later a source file for IsolatedStorageScope, so I'd go by that as a base. It all seems to depend on the Evidence class. So you should should be able to use that to test when you get a different values for different types of evidence.

I had started trying to dig through that file to get a clear understanding of each one, but the more I dug into it, the less I'm sure it suits my needs, but I wanted to point it out here none the less for others who might find it useful.

like image 62
Nick Albrecht Avatar answered Nov 15 '22 10:11

Nick Albrecht