C#向用户询问servername并保存每次运行应用程序

时间:2015-04-27 13:07:00

标签: c# database ms-access save

我试过搜索但没有运气,因为我不确定我是否使用了正确的术语。

我试图找出如何让用户在第一次运行应用程序时输入服务器名称,存储并将其插入到文件路径/连接字符串中。

初始运行的伪代码:

  1. 我看到这是您第一次运行此应用程序。请输入您的文件服务器名称。

  2. 用户输入:fileserver123x

  3. 将Fileserver123x写入文本文件。

  4. 初始化数据库连接

    1. string fileServername =读取文本文件;
    2. connection = new OleDbConnection(@" Provider = Microsoft.ACE.OLEDB.12.0; Data Source = \'" + fileServerName + @"' \ share \ folder \ Database.accdb; Persist Security Info = False;");

      1. 其余代码
      2. 我正在寻找是否有更好/更专业的方式来存储除了通过文本文件之外的用户文件服务器信息,并在每次初始化数据库连接时读取它。

        有什么想法吗?

1 个答案:

答案 0 :(得分:0)

你的概念看起来很好,我建议做一些改进:

  • 将文件服务器名称存储在Windows注册表中而不是文本文件中。这是表现良好的Windows程序存储其配置数据的地方。

  • 存储数据库的完整路径而不是文件服务器名称。这样,您的客户就不必使用固定的共享/文件夹名称。

  • 创建一个可以修改此配置数据的配置窗口。这也可以作为您第一次运行时显示的窗口。

  • 每次打开连接时都不要读取配置数据。在应用程序启动时将其读取一次,并将其存储在全局变量中。

    (注意:一般来说,全局变量是一种代码味道,但存储全局配置数据通常被认为是合法的用例。如果您想要一个简化单元测试的更高级解决方案,请查看依赖注入配置数据。)