在我的第一个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项目如何保存/组织数据库查询
基础教程推荐
- unity实现弧形移动 可角度自定 2023-02-26
- 使用C#开发ActiveX控件 2022-10-27
- c# – 如何使用Windows任务计划程序执行.Net Core 2.0控制台应用程序? 2023-09-19
- C#语言中字符类char的使用方法(总结) 2022-11-06
- C#实现获取本地内网(局域网)和外网(公网)IP地址的方法分析 2023-02-09
- WPF实现控件拖动的示例代码 2022-12-31
- c# – 如何调试由协议关联启动的Windows Phone 8.1应用程序? 2023-09-19
- Directory文件类的实例讲解 2022-11-24
- c# 免费组件html转pdf的实现过程 2023-06-14
- C# MemoryStream类案例详解 2023-04-27