新建个表,我用的是sql server2014,我会把文件发上来,如果是低版本的,可以执行语句,数据库就自己创建吧。

  1. USE [testdb]
  2. GO
  3.  
  4. CREATE TABLE [dbo].[Product](
  5. [ID] [int] IDENTITY(1,1) NOT NULL,
  6. [ProductId] [nvarchar](50) NULL,
  7. [ProductCode] [nvarchar](50) NULL,
  8. [ProductName] [nvarchar](255) NULL,
  9. [MarkPrice] [decimal](18, 2) NULL,
  10. [TruePrice] [decimal](18, 2) NULL,
  11. [Discount] [nvarchar](10) NULL,
  12. [IsWebPub] [int] NULL,
  13. [CityId] [int] NULL,
  14. [CityName] [nvarchar](50) NULL,
  15. [Sort] [decimal](18, 0) NULL,
  16. [Createtime] [datetime] NULL,
  17. [IsDelete] [int] NULL,
  18. CONSTRAINT [PK_Product] PRIMARY KEY CLUSTERED
  19. (
  20. [ID] ASC
  21. )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
  22. ) ON [PRIMARY]
  23.  
  24. GO

我创建了一个控制台应用程序,就不截图了

创建一个数据实体模型,也就是EDMX

数据库连接字符串,在App.config中
  <connectionStrings>
    <add name="mytestdbEntities" connectionString="metadata=res://*/testdb.csdl|res://*/testdb.ssdl|res://*/testdb.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.;initial catalog=testdb;persist security info=True;user id=sa;password=123456;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
  </connectionStrings>

来吧,写个增删改查:

  1. //增加
  2. Product p1 = new Product()
  3. {
  4. CityId = ,
  5. CityName = "北京",
  6. Createtime = DateTime.Now,
  7. Discount = "",
  8. IsWebPub = ,
  9. ProductId = "",
  10. ProductCode = "",
  11. MarkPrice = ,
  12. ProductName = "苹果",
  13. Sort = ,
  14. TruePrice =
  15. };
  16. Product p2 = new Product()
  17. {
  18. CityId = ,
  19. CityName = "上海",
  20. Createtime = DateTime.Now,
  21. Discount = "",
  22. IsWebPub = ,
  23. ProductId = "",
  24. ProductCode = "",
  25. MarkPrice = ,
  26. ProductName = "大Y梨",
  27. Sort = ,
  28. TruePrice =
  29. };
  30. using (mytestdbEntities dbefadd = new mytestdbEntities())
  31. {
  32. dbefadd.Product.Add(p1);
  33. dbefadd.Product.Add(p2);
  34. int retnum = dbefadd.SaveChanges();
  35. Console.WriteLine("add_{0}_ok", retnum);
  36. }
  37. //add_2_ok
  1. //删除
  2. using (mytestdbEntities dbefdel = new mytestdbEntities())
  3. {
  4. //删除一条
  5. // dbefdel.Product.Remove(p1);
  6. // dbefdel.SaveChanges();
  7. var entitys = dbefdel.Product.Where(p => p.ProductId == "");
  8. //删除多条
  9. dbefdel.Product.RemoveRange(entitys);
  10. int retnum = dbefdel.SaveChanges();
  11. Console.WriteLine("del_{0}_ok", retnum);
  12. }
  1. //修改
  2. using (mytestdbEntities dbefedit = new mytestdbEntities())
  3. {
  4. var p = dbefedit.Product.FirstOrDefault();
  5. p.ProductName = "就把你名字改了";
  6. int retnum = dbefedit.SaveChanges();
  7. Console.WriteLine("edit_{0}_ok", retnum);
  8. }
  1. //查询
  2. using (mytestdbEntities dbefsel = new mytestdbEntities())
  3. {
  4. //查询一条
  5. var p = dbefsel.Product.FirstOrDefault();
  6. Console.WriteLine("查询一条:{0}|{1}|{2}|{3}", p.ProductId, p.ProductName, p.ProductCode, p.TruePrice);
  7. //查询一个集合
  8. var list = dbefsel.Product.Where(pp => pp.ProductId == "");
  9. foreach (var item in list)
  10. {
  11. Console.WriteLine("查询多条:{0}|{1}|{2}|{3}", item.ProductId, item.ProductName, item.ProductCode, item.TruePrice);
  12. }
  13. Console.WriteLine("sel_ok");
  14. }
  15. Console.ReadLine();

点击下载代码

02—EF初次体验的更多相关文章

  1. ASP.NET Core Identity Hands On(1)——Identity 初次体验

    ASP.NET Core Identity是用于构建ASP.NET Core Web应用程序的成员资格系统,包括成员资格.登录和用户数据存储 这是来自于 ASP.NET Core Identity 仓 ...

  2. 在docker中初次体验.net core 2.0

    .net core的跨平台有了Linux,不能没有docker……网上的系列文章一大推,特别是docker还有了中文官网:https://www.docker-cn.com/ .上面说的很清楚了,这里 ...

  3. Visual Studio 2017 初次体验

    在初次体验中遇到以下问题以及技巧 1. 在出现红色波浪线时为出现错误语法,将鼠标移动到相应位置可以获得相关错误信息 2.在编写代码过程中,行号上出现的小黄灯可以有提示信息 3.List 与 Array ...

  4. kubebuilder实战之二:初次体验kubebuilder

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  5. 在ubuntu16.04中初次体验.net core 2.0

    .net core运行在Linux中的例子.文章已经很多了,看了一些之后也想体验一下,顺便记录一下…… 环境:win10 1709.它内置的Linux子系统(这里安装的是Ubuntu 16.04) 一 ...

  6. Total Commander的初次体验

    从汉化新世纪下载到最新的TC张学思版后,运行文件只需依照其提示就可以完成该软件的安装.作为新手初次运行体验了以下功能: 一.目录跳转 1. 初次启动TC软件界面截图: 2. 按下Ctrl+d后,直接再 ...

  7. HashTable初次体验

    用惯了数组.ArryList,初次接触到HashTable.Dictionary这种字典储存对于我来说简直就是高大上. 1.到底什么是HashTable HashTable就是哈希表,和数组一样,是一 ...

  8. 初次体验百度eCharts遇到的问题和解决方法

    前言 上周在厌烦Highchart下,体验了下百度的eCharts,支持IE6.7.8+外,对数据在线编辑还有工具栏支持,体验时遇到了几个小问题,最近两天在尝试得到了一个解决方法. Tooltip时单 ...

  9. 初次体验VS2015正式版,安装详细过程。

    本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 阅读目录 介绍 安装 其他 本文版权归mephi ...

随机推荐

  1. Cacls和ICacls

    解释:  Cacls:显示或修改文件的访问控制列表(ACL) ICACLS:显示或修改自由访问控制表(Dacl) 上指定的文件,并指定目录中的文件应用于存储的 Dacl. 总结:显示或修改文件访问控制 ...

  2. Hadoop和Spark的Shuffer过程对比解析

    Hadoop Shuffer Hadoop 的shuffer主要分为两个阶段:Map.Reduce. Map-Shuffer: 这个阶段发生在map阶段之后,数据写入内存之前,在数据写入内存的过程就已 ...

  3. 【AtCoder】ARC063

    ARC063 C - 一次元リバーシ / 1D Reversi 不同的颜色段数-1 #include <bits/stdc++.h> #define fi first #define se ...

  4. idea配置glassFish启动项目

    将项目打成war包形式. 然后配置glassFish +号配置启动包 此处配置启动路径 ........ 路径也可以在localhost:4848 --->中的Applicaton中去配置

  5. JS数据拷贝

    JS的拷贝可分为浅拷贝和深拷贝: 浅拷贝:如果数组元素是基本类型,就会拷贝一份,互不影响,而如果是对象或者数组,就会只拷贝对象和数组的引用,这样我们无论在新旧数组进行了修改,两者都会发生变化. 深拷贝 ...

  6. 【转载】Jave开发手册之正则表达式预编译

    今天又水一篇,java开发手册华山版 一.编程规约 (九)其它 第一条 解释:Pattern要定义为static final静态变量,以避免执行多次预编译. 错误用法: // 没有使用预编译 priv ...

  7. kafka安装、相关命令以及PHP使用

    1.安装JAVA #下载安装包 https://www.oracle.com/technetwork/java/javase/downloads/index.html tar -xzvf jdk-8u ...

  8. 关于JS原型以及原型链、instanceof的一些理解

    一.JS原型 首先要区分两个概念 1.构造函数 2.实例:由构造函数通过new方式创建出来的就是实例 <script> function Foo() { } var f = new Foo ...

  9. linux fork进程请谨慎多个进程/线程共享一个 socket连接,会出现多个进程响应串联的情况。

    昨天组内同学在使用php父子进程模式的时候遇到了一个比较诡异的问题 简单说来就是:因为fork,父子进程共享了一个redis连接.然后父子进程在发送了各自的redis请求分别获取到了对方的响应体. 复 ...

  10. 第四章 MIZ701 ZYNQ制作UBOOT固化程序

      4.0难度系数★☆☆☆☆☆☆ 4.1是什么是固化 我们前几章将的程序都是通过JTAG先下载bit流文件,再下载elf文件,之后点击Run As来运行的程序.JTAG的方法是通过TCL脚本来初始化P ...