• LINQ to SQL 在 Visual Studio 2008 中的简单应用


    在.Net Framework 3.5 中,最激动人心的就是增加了LINQ功能,LINQ在数据集成的基础上提供了新的轻型方式。有了LINQ,我们创建的查询现在就编程了.Net 框架的一个成员,在对要操作的数据存储执行查询时,会很快发现他们现在的操作方式类似于系统中的类型。这说明,现在可以使用任意兼容.Net 的语言来查询底层的数据存储,这在以前是不可能的。

    根据要在应用程序中处理的底层数据的不同,有不同类型的LINQ功能:

    LINQ to Objects

    对象只不过是存储在内存中的数据,对象本身可能就是查询数据,此时可以使用LINQ to Objects

    LINQ to SQL、LINQ to DataSets 和 LINQ to Entities 提供了查询关系型数据的方式,直接访问数据和存储过程,及表示表示体之间的关系,执行添删改查。

    LINQ to XML

    LINQ to SQL 和 Visual Studio 2008

    LINQ to SQL 是在SQL Server 数据库上设置一个强类型化界面的方式,提供了目前查询SQL Server 最简单的方法。

    下面要创建一个示例,从Northwind数据库(SQL Server 2000 示例数据库 现在只能到网上搜索下载了)的Products 表中提取数据项

    一,用VSTS 2008 新建一个C# Web 应用程序(.Net 3.5)

    二,右键为项目添加一个LINQ to SQL 类 并为其命名为和数据库相同的名字,容易识别。

    image

    确定,结果如下,可见OR设计器被打开

    image

    OR设计器由两部分组成:

    左边部分用于显示数据类,它可以是表、类、关联和继承。

    右边部分用于显示方法,这些方法映射到数据库中的存储过程上。

    三,创建表对象

    在创建表对象之前,我们先用服务器资源管理器建立对Northwind数据库的引用。

    右键数据连接节点->添加连接,打开添加连接对话框

    2009-10-08_163805

    输入服务器名,密码,并选择数据库之后点确定按钮。数据库被添加了进来。

    image

    打开此数据库的表文件夹,选择Product 表用鼠标直接拖动到OR设计器上,结果如下

    image

    同时Web.Config 文件中会添加如下的连接信息,在Northwind.designer.cs文件中还会添加相应的映射设计代码

    <connectionStrings>
        <add name="NorthwindConnectionString" connectionString="Data Source=TERRYFENG-PC;Initial Catalog=Northwind;Persist Security Info=True;User ID=sa;Password=saaaaa"
            providerName="System.Data.SqlClient" />
    </connectionStrings>

    在OR设计器的属性窗口中,我们可以看到连接串等信息

    image

    打开Default.aspx 文件,向其中拖动一个GridView 控件,并在后台添加代码。

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Data.Linq;
    
    namespace LINQtoSQL
    {
        public partial class _Default : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
                NorthwindDataContext dc = new NorthwindDataContext();
                //NorthwindDataContext 对象是DataContext类型的一个对象
                //DataContext类型好象一个连接器,为操作提供连接管道服务
                //var query = dc.Products;
                // var 是一个隐式的类型化变量,如果不能确定输出类型,就可以使用var来代替类型的定义,再编译期间设置类型。
                // 事实上dc.Products返回的是一个System.Data.Linq.Table<项目名.Products>对象
                // 所以也可以用如下的语句来定义类型,这样可以确定类型容易阅读
       
    
                Table<Products> query = dc.Products;
                
                //可以筛选结果,并通过简单的属性方式访问每行记录的属性,选择需要的内容
                foreach (Products item in query)
                {
                    Response.Write(string.Format("{0} | {1} | {2} <br />",
                       item.ProductID, item.ProductName, item.UnitsInStock));
                }
    
    
                //GridView1.DataSource = query;
    
                //GridView1.DataBind();
            }
        }
    }

    F5 运行 即可看到结果中显示了Products 的数据

    image

    image

    77条数据被显示

    冯瑞涛
  • 相关阅读:
    AC自动机【萌新文章】
    ubuntu安装pandas
    pandas.Series函数用法
    关于scikit-learn
    关于scikit-learn
    Ubuntu安装openmpi
    Ubuntu分区小知识与分区方案
    Ubuntu16.04安装x11VNC远程桌面
    Ubuntu用户权限管理(chown, chmod)
    Ubuntu新建用户组
  • 原文地址:https://www.cnblogs.com/finehappy/p/1579136.html
Copyright © 2020-2023  润新知