C# 我应该在哪里存储不同操作系统版本的临时应用程序数据?

C# 我应该在哪里存储不同操作系统版本的临时应用程序数据?,c#,sql-server-ce,temp,C#,Sql Server Ce,Temp,我有一个运行在不同操作系统版本上的应用程序,比如(winxp,win7,win8)。 我有一个只读访问的.sdf数据库,我使用环境.SpecialFolder.Templates作为临时路径 Temp Path= Environment.GetFolderPath(Environment.SpecialFolder.Templates) 在win7上工作正常,但在winxp和win8上返回错误(权限被拒绝) 所以我想问“在不同的操作系统版本中,应用程序数据库的推荐位置是什么?” 提前感谢。如果

我有一个运行在不同操作系统版本上的应用程序,比如(
winxp,win7,win8
)。 我有一个只读访问的
.sdf
数据库,我使用
环境.SpecialFolder.Templates
作为临时路径

Temp Path= Environment.GetFolderPath(Environment.SpecialFolder.Templates)
win7
上工作正常,但在
winxp
win8
上返回错误(
权限被拒绝

所以我想问“在不同的操作系统版本中,应用程序数据库的推荐位置是什么?”
提前感谢。

如果数据是特定于用户的

Environment.SpecialFolder.ApplicationData 
否则,如果数据由应用程序的所有用户共享

Environment.SpecialFolder.CommonApplicationData

如果使用Environment.SpecialFolder.CommonApplicationData会怎么样?