问题标签 [isolatedstorage]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - 在 IIS 服务器上使用独立存储
我对在 IIS 服务器上使用隔离存储感到有点困惑。
我理解独立存储的目标:提供一个安全的地方来存储数据,而不必担心这个地方如何以及在哪里。
由于独立存储具有按用户和按程序集的方法,因此我不太愿意在应用程序几乎拥有自己的身份的 IIS 服务器上使用它。我还没有真正看到模拟 Web 应用程序的兴趣,我自己也几乎从未见过模拟 Web 应用程序,但这是我的观点。
在服务器上使用独立存储意味着(对于 Windows Server 2003):
在
\Documents and Settings\<user>\
这意味着
\Documents and Settings\Default User\
当应用程序池由本地系统或网络服务拥有时,我猜这也意味着本地系统或网络服务的此文件夹的写入权限
使用冒名顶替
关于 Web 应用程序(逻辑),这些想法让我感到困惑……文档和设置?默认用户?仅为存储启用模拟?无法控制服务器上的存储?呃?
MSDN上的一些观点:
服务器存储。服务器应用程序可以使用隔离存储来提供单独的存储 [...]。由于隔离存储始终由用户隔离,因此服务器必须模拟发出请求的用户。[...]
使用隔离存储使部分受信任的应用程序能够以计算机安全策略控制的方式存储数据。
默认情况下,从本地计算机、本地网络、[...] 运行的代码被授予使用隔离存储的权利。我应该了解网络服务吗?我会感到惊讶。在我的 IIS 服务器 (Windows 2003) 上并非如此。
然后我陷入了困境:System.IO.Packaging
在 Web 应用程序上使用(内部带有独立存储)还是找到替代方案?使用IO.Packaging
意味着您必须启用隔离存储?
我的方法错了吗?我错过了什么 ?
我确切地说我不想在 IIS 服务器上使用/启用它,我想了解在这样的环境中启用它是否是一个好习惯。
任何观点都值得赞赏,关于“具有 IIS 理念的隔离存储”的解释可能是一个答案。
谢谢 !
c# - 您如何获得IsolatedStorage 中所有文件的平面列表?
我需要获取给定独立存储文件夹中所有文件的列表。隔离存储的根目录下有子文件夹,这些需要包含在列表中。
常用的 System.IO 类不能与 IsolatedStorage 一起使用。
c# - silverlight 将隔离存储与数据库同步
由于使用silverlight 的隔离存储可以提供一种在本地存储用户数据并且无需连接到互联网的方法,我很想听听您对智能同步dbdata 和silverlight 隔离存储数据的想法。
我目前已经实施了一个解决方案,但对我来说似乎有点复杂,所以我想听听我是否可以做得不同。
我有一个保存到 isostore 的文档对象列表。
该文档具有 (datetime)DateModified 和 (bool)DeleteOnSync 属性,这些属性对于同步至关重要。当用户连接到互联网时,应用程序将检查存储在数据库中的文档列表与 isostore 中的列表,并将两个列表合并为一个,其中(如果两个对象共享 id)只有最新的文档(具有最新的 DateModified) 被选中。加入列表后,将查找“DeleteOnSync”,其中将此属性设置为 true 的文档将从 db 和 isostore 中删除。然后它将这个新列表保存到 db 和 isostore。
这有意义吗?
c# - 由于域上下文冲突,无法更改存储列表
我的问题是我将实体列表保存到隔离存储中,以便用户可以在本地更改它们。如果用户在线并修改了更改,则必须在本地和外部保存到数据库。这是一个问题,因为我收到一条错误消息,指出实体“无法附加到此 EntityContainer,因为它已附加到另一个 EntityContainer”
基本上,我保存到隔离存储的是一个具有 List 类型的 Nodes 属性的 List。然后在我的数据表单的保存事件中(如果用户是 OOB 并且有网络)我将数据都保存到服务器,然后从 isostore 检索列表。找到合适的 Root 对象,然后执行 Root.Nodes.Add((Node)DataForm.CurrentItem),然后我得到错误。我怎样才能解决这个问题?
silverlight - 如何从 Silverlight 4.0 中的独立存储中删除目录?
我有一段代码应该删除一个文本文件及其父目录:
...其中 logPath + "\" + logFileName 可能是:"Logs\log.txt"
当它执行时,我得到一个异常,说它无法创建目录,而不是删除它。有人知道为什么是这样吗 ?
谢谢,
斯科特
asp.net - 隔离存储 将文件保存在 Web 服务的默认用户配置文件中
我的问题是:
我有一个 Windows 应用程序,它在当前用户的隔离存储上存储一个文件,我们称这个用户为 Adam。
在同一台机器上,我有一个 Web 服务(Web 服务的应用程序池使用 Adam 的凭据运行),它使用相同的 dll 访问隔离存储上的文件,但它试图访问默认用户配置文件中的文件,而不是真实用户的个人资料(在本例中为 Adams 个人资料)
为什么它试图在默认用户的个人资料而不是亚当的个人资料上查找文件?我怎样才能让它在正确的配置文件中查找文件?
我在 Win 2003、C# 和 .Net framework 3.5 上运行它
谢谢。
silverlight - Silverlight 4 - 将用户设置保存到隔离存储
完整的 .NET 平台具有将用户选项存储在设置文件中的强大功能,可以方便地支持保存和加载。有没有人为 Silverlight 创建了一个类似的东西?我希望将设置存储在客户端。
c# - 访问 IsolatedStorageBackingStore 时出现 HRESULT 0X80131468 的原因
我面临的情况是我有一个在 W2k3 服务器上运行的 ASP.NET Web 服务 (.NET 3.5),该服务器使用 CacheManager/IsolatedStorage 存储来存储持久状态变量。在我们更改物理机器之前,此配置已经运行了很长一段时间。现在,每当访问该值的代码运行时,它都会抛出一个 IsolatedStorageException(发布在下面)。据我了解,用户/程序集存储是正在访问的内容,执行用户是本地管理员组的成员。有没有人建议缺少什么特权?
错误
无法创建存储目录。(来自 HRESULT 的异常:0x80131468)
堆栈跟踪
类型:Microsoft.Practices.ObjectBuilder2.BuildFailedException。错误:当前构建操作(构建密钥 Build Key[Microsoft.Practices.EnterpriseLibrary.Caching.ICacheManager, Cache Manager])失败:无法创建存储目录。(HRESULT 异常:0x80131468)(策略类型 ConfiguredObjectStrategy,索引 2)。跟踪:在 Microsoft.Practices.ObjectBuilder2.Builder.BuildUp(IReadWriteLocator 定位器,ILifetimeContainer 生命周期,IPolicyList 策略,IStrategyChain 策略,对象 buildKey,现有对象)在 Microsoft.Practices 的 Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(IBuilderContext context)。微软的 ObjectBuilder2.Builder.BuildUp[TTypeToBuild](IReadWriteLocator 定位器、ILifetimeContainer 生命周期、IPolicyList 策略、IStrategyChain 策略、Object buildKey、Object existing)。1.CreateDefault()
at Microsoft.Practices.EnterpriseLibrary.Caching.CacheFactory.GetCacheManager()
at Ept.Commands.SettlementCommand.BeginSettlement() in c:\Projects\EPT\Ept.Framework.Services\Commands\SettlementCommand.cs:line 102
at Ept.Commands.SettlementCommand.ExecuteKernel(SettlementRequest request) in c:\Projects\EPT\Ept.Framework.Services\Commands\SettlementCommand.cs:line 188
at Ept.Command
2.在 c:\Projects\EPT\Ept.Framework.Services\Commands\Command.cs:line 79 中执行(TRequest 请求)。ExecutingStrategyTypeName:ConfiguredObjectStrategy ExecutingStrategyIndex:2 BuildKey:Build Key[Microsoft.Practices.EnterpriseLibrary.Caching.ICacheManager , 缓存管理器] 类型:System.IO.IsolatedStorage.IsolatedStorageException。错误:无法创建存储目录。(来自 HRESULT 的异常:0x80131468)。追踪:在 System.IO.IsolatedStorage.IsolatedStorageFile.GetRootDir(IsolatedStorageScope 范围) 在 System.IO.IsolatedStorage.IsolatedStorageFile.InitGlobalsNonRoamingUser(IsolatedStorageScope 范围) 在 System.IO.IsolatedStorage.IsolatedStorageFile.GetRootDir(IsolatedStorageScope 范围) 在 System.IO.IsolatedStorage System.IO.IsolatedStorage 中的 .IsolatedStorageFile.GetGlobalFileIOPerm(IsolatedStorageScope 范围)。2.Create(IBuilderContext context, TConfiguration objectConfiguration, IConfigurationSource configurationSource, ConfigurationReflectionCache reflectionCache)
at Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.AssemblerBasedCustomFactory
2. 在 Microsoft.Practices.EnterpriseLibrary.Caching.Configuration.CacheManagerAssembler.Assemble(IBuilderContext context, CacheManagerDataBase objectConfiguration, IConfigurationSource configurationSource, ConfigurationReflectionCache reflectionCache) 在 Microsoft.Practices.EnterpriseLibrary 中创建(IBuilderContext context, String name, IConfigurationSource configurationSource, ConfigurationReflectionCache reflectionCache)。 Common.Configuration.ObjectBuilder.AssemblerBasedObjectFactory2.Create(IBuilderContext context, TConfiguration objectConfiguration, IConfigurationSource configurationSource, ConfigurationReflectionCache reflectionCache)
at Microsoft.Practices.EnterpriseLibrary.Caching.CacheManagerCustomFactory.Create(IBuilderContext context, CacheManagerDataBase objectConfiguration, IConfigurationSource configurationSource, ConfigurationReflectionCache reflectionCache)
at Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.AssemblerBasedCustomFactory
2.在 Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.AssemblerBasedCustomFactory 中创建(IBuilderContext 上下文,字符串名称,IConfigurationSource 配置源,ConfigurationReflectionCache 反射缓存)`2.在 Microsoft 中创建对象(IBuilderContext 上下文,字符串名称,IConfigurationSource 配置源,ConfigurationReflectionCache 反射缓存)。 Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(IBuilderContext context) 中的 Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.ConfiguredObjectStrategy.PreBuildUp(IBuilderContext context)。
silverlight - 隔离存储错误
我正在构建一个使用隔离存储的 Windows Phone 7 应用程序。该代码大部分时间都有效,但我不断随机收到 IsolatedStorageExceptions:
该文件存在。我将所有的 IsolatedStorage 使用都放在 using 块中,所以我不应该在任何地方打开文件。
这可能是什么原因造成的?
如何获得有关异常原因的更多详细信息?
c# - 缓存不经常更改的数据以加快客户端应用程序加载时间是否适合使用隔离存储?
我正在使用 Silverlight 重写企业应用程序。该项目仍处于开发的早期阶段,但在应用程序启动时存在大量初始数据负载,因为它从服务器中提取了几组业务对象。其中一些数据集在用户设置后很少更改;比如用户使用的所有自定义数据类型的列表。
在这些情况下,想法是将数据对象(可能以序列化形式)缓存在独立存储中,这样在第一次加载应用程序后就无需等待对服务器的异步调用来获取数据。
我认为独立存储旨在存储配置数据,例如用户偏好,或在应用程序的浏览器内和浏览器外版本之间共享……它的工作原理很像 cookie 存储。
我主要担心的是我不确定独立存储的安全性,我不相信在其中缓存应用程序数据。公平地说,用户还可以访问 Silverlight .xap 文件。
这是隔离存储的适当用途,为什么或为什么不?