在我的第一个c#项目中,我需要连接到数据库服务器以进行多个只读查询.有人会分享如何将查询组织到项目中的经验吗?目前我只需要在c#源文件中硬编码查询字符串.但是很难维护,一旦数据库服务器端发生了变化,我就遇到了麻...

在我的第一个c#项目中,我需要连接到数据库服务器以进行多个只读查询.有人会分享如何将查询组织到项目中的经验吗?目前我只需要在c#源文件中硬编码查询字符串.但是很难维护,一旦数据库服务器端发生了变化,我就遇到了麻烦.或者我应该使用appsettings将所有查询字符串放在.config文件中?还有更好的方法吗?我无权在服务器上保存存储过程.谢谢.
解决方法:
根据您的需求,有不同的答案和不同的复杂程度.除了最小的项目之外,我创建了两个用于数据库访问的类库项目:一个包含数据模型和查询,另一个测试项目用于执行第一个项目的查询.在简单的解决方案中,您可以在ASP.NET或其他项目中使用此库.
你应该强烈考虑学习像NHibernate或VS 2008/.NET 3.5’s Linq-To-SQL或Entity Framework这样的ORM.如果你有一个面向网络的应用程序,你必须记得使用parameterized queries.
在更复杂的解决方案中,您将完全将数据库封装到own service, or tier中.根据我的经验,我有一个数据访问层,它作为Windows服务运行在自己的Windows Communication Foundation服务中,它是唯一可以直接与之对话的服务.数据库或知道数据库的数据模型.它将与数据库进行所有交互,然后将数据转换为其他层读取的不同数据模型.我通常会创建一个名为“Contracts”的项目,其中包含从数据层传递到系统其余部分的所有接口和数据模型.这样做的原因是为了避免您提到的痛苦:您可以更新底层数据库,ORM层和“通用数据模型”,然后根本不更改其他层.
本文标题为:c#/ .net项目如何保存/组织数据库查询


基础教程推荐
- C#调用百度地图API根据地名获取经纬度geocoding 2023-05-30
- C#实现的文件操作封装类完整实例【删除,移动,复制,重命名】 2022-11-04
- C#中List和SortedList的简介 2023-01-06
- c# – 使用实体框架将更改保存回数据库 2023-11-09
- c# – Windows Phone上的Bing Map – 将点击事件添加到图钉;显示更多细节 2023-09-19
- C#利用栈实现加减乘除运算 2023-02-02
- C#中public变量不能被unity面板识别的解决方案 2023-04-14
- Unity实现卡牌翻动效果 2023-01-16
- NancyFx框架检测任务管理器详解 2022-11-22
- c# – Windows 7上的系统蜂鸣声 2023-09-19