Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Windows服务托管的WCF服务中存储用户设置_Wcf_Windows Services_Settings_Persistent - Fatal编程技术网

在Windows服务托管的WCF服务中存储用户设置

在Windows服务托管的WCF服务中存储用户设置,wcf,windows-services,settings,persistent,Wcf,Windows Services,Settings,Persistent,我已经创建了一个由Windows服务托管的WCF/REST服务 服务背后没有数据库,因为不需要数据库 但我想保存一些常规设置(允许用户列表、输出格式设置等)。 我尝试了.settings文件,并使用ConfigurationManager.AppSettings[“Key”]进行了读/写操作 这在服务运行时起作用 但如果我停止并启动服务,存储的值就会消失 是否有其他机制可以在没有任何数据库的情况下永久保存设置 谢谢你的回答 我会将设置存储在Windows服务的app.config文件中(请参阅)

我已经创建了一个由Windows服务托管的WCF/REST服务

服务背后没有数据库,因为不需要数据库

但我想保存一些常规设置(允许用户列表、输出格式设置等)。 我尝试了
.settings
文件,并使用
ConfigurationManager.AppSettings[“Key”]
进行了读/写操作

这在服务运行时起作用

但如果我停止并启动服务,存储的值就会消失

是否有其他机制可以在没有任何数据库的情况下永久保存设置


谢谢你的回答

我会将设置存储在Windows服务的app.config文件中(请参阅)


.
然后,您可以通过调用
string appName=ConfigurationManager.AppSettings[“Application Name”]
来检索这些设置。
app.config中的AppSettings将永久存储,并在停止和启动服务后仍然有效;)

持久存储=数据库。克服它-你需要一个。使用它。@marc_这个解决方案对于4或5个字符串来说有点太多了。我曾考虑将其保存在App.config或单独的XML文件中,但我不知道如何保存,以及该文件/配置将存储在何处。好吧,您也可以获得非常轻量级的数据库-不必像Oracle或SQL Server安装那样庞大。。。。可能是SQLite,或“NoSQL”(如RavenDB或MongoDB)-易于使用、易于设置服务是否只需要读取这些设置?@justMe读取并存储在停止服务中是的。另一种方法是存储在客户端,启动服务,传输设置,…,读取设置并存储在客户端,从客户端停止服务
<configuration>
  <appSettings>
    <add key="Application Name" value="MyApplication" />
  </appSettings>
</configuration>.