在app.config中持有ConnectionString或在C#项目中持有properties.Resources?

时间:2010-03-06 05:42:06

标签: c# app-config connection-string

我已将项目连接字符串保存在app.config文件中并使用它没有任何问题。 但是有人告诉我,她把它放在她项目的Properties.Resources中。

现在,我的问题是这两种方式之间有什么偏好吗?或者你还提供什么?

谢谢

2 个答案:

答案 0 :(得分:3)

如果您希望能够更改此部署后,最好将其放在app.Config中。如果您只需要在编译时配置它,任何一个选项都可以。资源中仅编译时配置的优点是既隐藏配置字符串,又可能少部署一个文件。

答案 1 :(得分:0)

这一直是一个有趣的答案。这一切都取决于你目前的情况和需求。

  1. 你需要改变吗? 连接字符串post deploy?
  2. 安全注意事项 - >有人 也许能够访问你的 来自存储的凭证的数据库。 (这有多少权限 凭证有?等。)
  3. 如果您希望在部署后轻松更改连接字符串,那么app.config可能是最简单的选择。

    如果担心安全问题,那么你可以看看两件事。

    1. 锁定权限 凭证(仅给出最低限度 您的应用程序所需的权利)
    2. 加密连接字符串。 (从他们将要存储的内存中查看MS Enterprise Library 连接字符串加密和 解密你)
    3. 存储连接字符串 注册表
    4. 加密和存储连接 注册表中的字符串(如果这是一个主要问题。它是关于让黑客更难的。)