Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.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
C# 具有集中数据库服务器和数据库的多客户端(WPF应用程序)(SQL server 2008)_C#_Sql Server_Wpf_Centralized - Fatal编程技术网

C# 具有集中数据库服务器和数据库的多客户端(WPF应用程序)(SQL server 2008)

C# 具有集中数据库服务器和数据库的多客户端(WPF应用程序)(SQL server 2008),c#,sql-server,wpf,centralized,C#,Sql Server,Wpf,Centralized,我开发了一个WPF桌面应用程序,将在多台客户端PC中使用,它们都有一个集中的数据库来执行CRUD操作,我们最多有5-10个并发用户,我已经开发了这个应用程序,我已经基本完成了,最近我突然想到,在WPF桌面应用程序中使用客户机-服务器集中式体系结构是一种很好的做法。我是WPF新手,所以我不知道在这个场景中如何处理不同的请求。我的意思是,在ASP.net中,IIS为每个用户会话创建了不同的应用程序域。请告诉我我所做的是否正确,如果不正确,请解释原因并提出替代方案,谢谢你可能应该看看。它将允许您创建一

我开发了一个WPF桌面应用程序,将在多台客户端PC中使用,它们都有一个集中的数据库来执行CRUD操作,我们最多有5-10个并发用户,我已经开发了这个应用程序,我已经基本完成了,最近我突然想到,在WPF桌面应用程序中使用客户机-服务器集中式体系结构是一种很好的做法。我是WPF新手,所以我不知道在这个场景中如何处理不同的请求。我的意思是,在ASP.net中,IIS为每个用户会话创建了不同的应用程序域。请告诉我我所做的是否正确,如果不正确,请解释原因并提出替代方案,谢谢你可能应该看看。它将允许您创建一个标准化的web API来进行开发。WCF可以托管在process(您编写的自定义服务器)中,也可以由IIS托管


调整现有程序以使用WFC可能是一个挑战,这取决于您已经构建了它的方式。u通常,应用程序需要从一开始就为其设计。

我知道WCF服务,但连接不是问题——客户端和服务器使用相同的本地网络,我关心的是并发请求,如何处理从多个WPF应用程序到Sql server 2008数据库的请求。您当前使用的是什么方法从每个客户端访问数据库(实体框架、ADO.net等)?ADO.net,主要是DataReader,DataAdapters和普通的Sqlcommands,我必须提到的是,DataReader并没有长时间打开,它们只是获取一条记录,然后关闭。据我所知,WPF并没有改变SQL的行为。对于针对sql server的并发请求,您不应该有任何问题;它的设计就是为了解决这个问题。sql server收到的每个打开请求都会在服务器上创建一个会话。您可能遇到的唯一问题是锁定,即打开的事务锁定一个表,而另一个客户端尝试向同一个表读取或写入数据。它将暂停,直到释放锁。有可能陷入死锁状态,两个客户端互相等待。