我很想获得在其他项目中处理连接字符串的正确/最佳方法:
我在VS解决方案中有两个项目:
项目1:网站(asp.net)
项目2:有一些课程
在项目2中设置连接字符串的正确方法是什么?
Project 2有一个静态类,其功能如下:
public static List<T> GetData();
我是否应该始终将连接字符串作为变量传递,如:
public static List<T> GetData(string connectionString);
语法如ie。:
var connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["connectionStringName"];
var list = ClassX.GetData(connectionString);
或者是否可以通过其他方式设置某个地方?
或者我的完整设置错了吗? :)
答案 0 :(得分:2)
我们通常将connection string
放入网站(主要入口点),我们可以从class library
(项目2)中读取它。
只需在您的类库中添加System.Configuration
的引用,您就可以从项目1中阅读config
,就好像您正在执行项目1中的代码一样直接
答案 1 :(得分:2)
在两个项目中定义连接字符串并不重要,只需添加您的默认项目项目1:网站(asp.net)的配置文件。 / p>
<connectionStrings>
<add name="Context" connectionString="Server=ServerName; User ID=sa; Password=123; Database = DBName;"
providerName="System.Data.SqlClient" />
</connectionStrings>
的更多信息
答案 2 :(得分:1)
描述的一些好方法是:
将常见配置设置放在machine.config
here
另请参阅此内容,其中显示了如何在同一解决方案中的多个项目之间共享相同的app.config文件(假设您可以在此处放置连接字符串)。
答案 3 :(得分:1)
类库没有自己的配置。它们使用的是可用于执行它们的配置。
这意味着你应该能够使用相同的代码,它将从配置中读取设置(假设它在那里)。