• 使用C#+Linq+SQL快速开发业务


    C#开发桌面程序的效率确实很高,今天就来总结下如何使用C#+Linq+SQL快速开发一个新的业务系统。

    Linq是微软官方的轻量级的ORM工具,使用它结合SQL可以快速的生成实体类,再通过Linq操作可以快速的开发业务。

     

    1、生成实体类:

    对于已经存在的数据库结构(SQL Server),可以使用VS自带的命令行工具生成实体类:

     

    image

     

    sqlmetal工具可以用来对SQL Server数据库快速生成C#中的实体类,具体参数:

    /server参数指定服务器名称

    /database参数指定数据库名称

    /namespace参数指定生成代码的命名空间

    /code参数指定生成代码名称

     

    2、在C#中对实体类的操作:

       1:  /*
       2:          * Shifenzheng是数据库实体类名称,继承自System.Data.Linq.DataContext
       3:          * 实例化时,参数为数据库的连接字符串。
       4:          * 
       5:          */
       6:         Shifenzheng db = new Shifenzheng(@"Data Source=CHAO-COMPUTERMSSQLSERVER_R2;Initial Catalog=Shifenzheng;User ID=sa;Password=123123123;");
       7:   
       8:         public frmMain()
       9:         {
      10:             InitializeComponent();
      11:         }
      12:   
      13:         private void sbSearch_Click(object sender, EventArgs e)
      14:         {
      15:   
      16:             string strName = teName.Text.Trim();
      17:             if (strName.Length==0)
      18:             {
      19:                 MessageBox.Show("请输入查询条件!");
      20:                 return ;
      21:             }
      22:   
      23:             /*
      24:              * Linq语句返回的是System.Linq.IQueryable<KF_Search.Tbl> {System.Data.Linq.DataQuery<KF_Search.Tbl>}对象。
      25:              * 该对象只能通过foreach来循环访问。
      26:              * 因此将其转换为List对象作为表格控件的数据源。
      27:              */
      28:             var kfer = from cc in db.Tbls
      29:                        where cc.Name == strName && cc.Mobile!=""
      30:                        select cc;           
      31:             var dataList = kfer.ToList();
      32:   
      33:             //设置gridControl对象的数据源
      34:             gcDetails.DataSource = dataList;
      35:             gcName.FieldName = "Name";
      36:             gcGender.FieldName = "Gender";
      37:             gcMobile.FieldName = "Mobile";
      38:             gcIDCard.FieldName = "CtfId";
      39:             gcEmail.FieldName = "EMail";
      40:             gcAddress.FieldName = "Address";
      41:   
      42:             MessageBox.Show("总共搜索到 "+dataList.Count+" 条记录!");
      43:         }   

    3、最终实现结果:

    image

  • 相关阅读:
    快速排序学习
    转载 libSVM介绍(二)
    支持向量机: Maximum Margin Classifier
    联发科笔试题之字符编码
    研究1
    在OnLButtonDown获取其他控件被点击的消息
    希尔排序学习
    快速排序
    别人的string的实现,有时间好好学习下
    完成动态根据类别动态填充区域颜色
  • 原文地址:https://www.cnblogs.com/chaosimple/p/3978802.html
Copyright © 2020-2023  润新知