为多个客户端运行C#数据库应用程序

l

众所周知的成员
加入
2018年11月29日
消息
52
编程经验
Beginner
你好

我有一个在C#的数据库应用程序,为神学学院。如果我想在与另一个数据库中的另一个站点对另一所大学一起使用相同的应用程序,那么连接到数据库的最佳方法是什么。

我目前使用连接字符串,但这意味着更改每个大学的字符串。

有没有通用连接方法?是最好使用ODBC连接到数据库,或者有更好的方法。

我正在尝试使应用程序便携,而无需对每个大学进行更改。

只是指出我的正确方向,我不相信被赋予代码,这不是学习的方式。

谢谢,非常感谢。
 

jmplhinney.

C#论坛主持人
工作人员
加入
2011年4月23日
消息
3,731
地点
悉尼,澳大利亚
编程经验
10+
如果数据库不在每种情况下在同一位置,那么您才能选择,但要更改连接字符串。例如,如果将在每个站点的服务器上创建数据库,并且每次服务器可能具有不同的名称,那么您必须每次提供该名称。您可以使用ODBC并指定DSN,但是,您需要在每台计算机上保存新的DSN,其中包含连接详细信息,因此您只需将问题推回一步。有助于的唯一方法是如果每台机器都有该服务器的DSN,则可以在连接后指定数据库。如果您的数据库是应用程序的本地应用程序,那么您就会有同样的问题,因为你可以使用"|DataDirectory|"占位符在连接字符串中,它将在运行时解决。另一个选项是在从用户提供的值并在本地保存的运行时在运行时构建连接字符串,或许使用应用程序设置。
 

Sagar-Jaybhay

成员
加入
2019年2月19日
消息
8
地点
浦那
编程经验
5-10
Facebook
sagar.jaybhay.906
推特
sagar_jaybhay
您可以创建一个表,其中您可以将数据库字符串映射与其身份ID。在运行该表中的应用程序读取值时。
 

jmplhinney.

C#论坛主持人
工作人员
加入
2011年4月23日
消息
3,731
地点
悉尼,澳大利亚
编程经验
10+
您可以创建一个表,其中您可以将数据库字符串映射与其身份ID。在运行该表中的应用程序读取值时。
这将要求您拥有一个主数据库,每个用户在连接到首先连接的每个站点,然后获取自己的数据库的连接详细信息。它也意味着您仍然必须在部署后编辑网站ID,因此为什么不仅编辑连接字符串?
 

跳伞运动员

工作人员
加入
2019年4月6日
消息
2,903
地点
切萨皮克,va.
编程经验
10+
就个人而言,我有点担心你有3个不同的组织共享一个数据库。我希望数据库没有坐在互联网上裸体。回想一下近来(NoSQL?)数据库漏洞,有些人留下了在互联网上裸露的数据库 - 甚至更糟糕的是他们将默认登录留出了主动。
 

jmplhinney.

C#论坛主持人
工作人员
加入
2011年4月23日
消息
3,731
地点
悉尼,澳大利亚
编程经验
10+
就个人而言,我有点担心你有3个不同的组织共享一个数据库。
据我所知,那不是这种情况。如果是,则不会有问题,因为每个人都使用相同的已知连接详细信息。从我的阅读来看,此应用程序将在多个站点使用,每个站点都将在自己的选择中拥有自己的数据库副本,这就是为什么连接详细信息对每个站点都不同的原因。这个问题的第一段所说"another database"那么有点规定了一个"single database".
 

跳伞运动员

工作人员
加入
2019年4月6日
消息
2,903
地点
切萨皮克,va.
编程经验
10+
谢谢。我错过了OP的那部分。
 
最佳 底部