c# – 远程数据库良好实践

我们正在使用MS SQL Server创建一个WinForms .NET4应用程序,我们正在两种情况之间做出决定:

1)WinForms应用程序直接连接到MS SQL Server.

2)使用3层体系结构并在其间插入WebServices.

问题:

1)将SQL连接公开打开到“世界”是一个好习惯吗?

2)您会推荐哪种方案.应用程序是面向数据的,非常简单,不计划任何其他客户端,只有WinForms客户端.

提前致谢.

詹姆士

最佳答案 绝对选择具有Web服务层的选项.这允许您:

>继续使用您的域模型(POCO和序列化).
>避免将SQL Server打开到Internet.
>在Web服务中应用高级业务逻辑.
>从客户端应用程序中删除SQL逻辑;所有数据访问都属于应用层.
>根据需要应用安全规则/约束.出于各种原因阻止客户/用户或IP地址.

点赞