c#在sqlserver中使用EF框架
2024-10-20 16:05:20
vs2017,sqlserver2017(localdb)调试通过。
在sqlserver中创建数据库d1,表t1如下:
录入数据如下:
在vs新建任意项目,此处以控制台为例。
添加数据模型Model1:
为了尽量少写代码,选择下图内容(该模式似乎没有迁移问题,挺好的):
说明:连接字符串可以在代码中自行设置,所以下面选了“否”并且没有勾选复选框。
选择需要使用的表:
完成
项目里自动添加Model1.cs和t1.cs。一个是数据库对象(含表),一个是表里的记录对象。
把Model1.cs当中的‘base("name=Model1")’改成用连接字符串
@"server=(localdb)\mssqllocaldb;initial catalog=d1;user ID=sa;password=1;"
表示:
可以看到两个文件中声明的属性和类,一个表示表,一个是记录。
至此,完成模型和数据库部分,可以写主程序了。代码和效果如下:
static void Main(string[] args)
{
Model1 m = new Model1();//声明数据库对象m
//利用linq语句筛选记录。类似于select * from t1
var students = from x in m.t1 select x;
//利用lamda表达式筛选出符合条件的记录
t1 student = m.t1.First(x => x.nl > );
foreach (var item in students)
{
Console.WriteLine($"{item.xm}\t{item.nl}\t{item.cj1}\t{item.xb}");
}
Console.WriteLine($"{student.xm}\t{student.nl}\t{student.cj1}\t{student.xb}");
Console.ReadKey();
}
最新文章
- 关于JS的编码转换问题
- 反应堆模式最牛的那篇论文--由solidmango执笔翻译
- [Config]Zabbix的Mongodb插件安装,centos
- 解决:jquery-1.11.1.min.js红叉问题
- iOS 应用有用户评论功能 因为潜在色情信息被退回解决方案
- Android桌面悬浮清内存app概述
- 【转载】linux命令行计算器bc的一个“坑”
- (转载)JDK中的设计模式
- windows下Qt5.1 for android开发环境配置(PS:Qt5.2出来了哈,稳定)
- servlet的doPost 和doGet和web文件结构
- BZOJ 1996: [Hnoi2010]chorus 合唱队(dp)
- 重定向URL
- js实现单双行文本溢出添加省略号
- linux alias 命令 查看系统设置的命令别名
- (C/C++)区别:数组与指针,指针与引用
- linux sendmail 发送缓慢的问题
- spring cloud: zuul(三): ribbon负载均衡配置
- 解决 java.lang.AbstractMethodError: org.mybatis.spring.transaction.SpringManagedTransaction.getTimeout()L的问题
- Oracle TO_DATE() 函数格式化时间【全】
- Java-JUC(十):线程按序交替执行