`
terryfeng
  • 浏览: 507150 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

LINQ to SQL 不使用O/R设计器建表对象

阅读更多
创建自己的定制对象
首先要建立一个用于展示Customer的类,代码如下:
using System.Data.Linq.Mapping;  //需要加此引用

namespace LINQtoSQL
{
    [Table(Name = "Customers")]  //制定Table特性表示表类,Name定义了在数据库中使用的表名
    public class Customer
    {
        [Column(IsPrimaryKey = true, Name = "CustomerID")]//映射数据库中的列,并标识主键
        public string MyCustomerID { get; set; }
        [Column]
        public string CompanyName { get; set; }
        //[Column]
        //public string ContactName { get; set; }
        //[Column]
        //public string ContactTitle { get; set; }
        //[Column]
        //public string Address { get; set; }
        //[Column]
        //public string City { get; set; }
        //[Column]
        //public string Region { get; set; }
        //[Column]
        //public string PostalCode { get; set; }
        [Column]
        public string Country { get; set; }
        //[Column]
        //public string Phone { get; set; }
        //[Column]
        //public string Fax { get; set; }
    }
}
用定制的对象和LINQ进行查询
public void CustomObject()
        {
            // using ExecuteQuery
            //获得一个DataContext对象,注意他使用的是DataContext
            DataContext dc = new DataContext(ConfigurationManager.ConnectionStrings["NorthwindConnectionString"].ToString());

            dc.Log = Console.Out; //将使用的SQL输出到控制台

            Table<Customer> myCustomers = dc.GetTable<Customer>();

            foreach (Customer item in myCustomers)
            {
                Response.Write(item.CompanyName + " | " + item.Country + "<br />");
            }
        }

LINQ to SQL 使用DataContext对象在SQL Server 数据库上执行查询,把返回的行转换为强类型的Customer对象,这就允许迭代Table 对象集合中的每个Customer 对象,获得需要的信息。

用查询限制所查询的列

如果你定义的对象仅包含有限的属性,那么在查询的时候查询的结果也会根据属性进行返回对应个数结果列。

使用列名

列名必须要和属性名一致,否则会报错,为了解决这个问题,需要加入Name指定才行。

[Column(IsPrimaryKey = true, Name = "CustomerID")]//映射数据库中的列,并标识主键 public string MyCustomerID { get; set; }

创建自己的DataContext对象

创建自己的DataContext对象,就是Northwind.designer.cs 的一个子集,可以让这个类管理对数据库的连接,最简单形式代码如下。

using System.Data.Linq;
using System.Configuration;

namespace LINQtoSQL
{
    public class MyNorthwindDataContext : DataContext
    {
        public Table<Customer> Customers;

        public MyNorthwindDataContext()
            : base(ConfigurationManager.ConnectionStrings["NorthwindConnectionString"].ToString())
        {
            //调用基类实现初始化
        }
    }
}

 

使用自定义DataContext

 

public void MyselfDataContext()
        {
            // using ExecuteQuery
            //获得一个DataContext对象,注意他使用的是DataContext
            MyNorthwindDataContext dc = new MyNorthwindDataContext();

            Table<Customer> myCustomers = dc.Customers;

            foreach (Customer item in myCustomers)
            {
                Response.Write(item.CompanyName + " | " + item.Country + "<br />");
            }

        }

 

 

 

 

分享到:
评论

相关推荐

    LINQ体验——LINQ to SQL语句之Insert/Update/Delete操作

    在LINQ to SQL中,我们可以使用InsertOnSubmit方法将新的对象添加到对应的集合中,然后调用SubmitChanges方法将数据提交到数据库。 例如,下面是一个简单的Insert操作示例: NorthwindDataContext db = new ...

    一个简单的linq to sql例子

    在这个简单的LINQ to SQL例子中,我们将探讨如何使用C#来实现数据库的基本操作。 首先,我们需要包含必要的命名空间,如`System.Linq`和`System.Data.Linq`,它们提供了 LINQ to SQL 所需的类和方法。接下来,我们...

    LINQ to SQL.rar

    **LINQ to SQL** 是微软.NET Framework中的一种技术,它允许开发者使用C#或VB.NET语言的查询表达式(Language Integrated Query,简称LINQ)直接对SQL数据库进行操作。这项技术将关系数据库的数据操作与对象模型无缝...

    linq基础 linq to sql

    3. 查询数据库:使用LINQ to SQL,你可以编写查询表达式来检索、过滤、排序和分组数据库记录,这些查询会被编译成T-SQL并发送到服务器执行。 4. 操作实体: LINQ to SQL支持对象状态管理,可以跟踪对象的变化,并在...

    LINQ To SQL实现分页效果源码

    LINQ (Language Integrated Query) 是.NET框架中的一种技术,它允许开发者使用类似SQL的查询语法在C#或VB.NET等编程语言中操作对象。在本例中,我们关注的是LINQ to SQL,这是一种特定的LINQ实现,它用于与关系...

    Linq To Sql进阶系列

    - **Linq To Sql动态查询**:Linq To Sql提供了强大的动态查询能力,允许开发者使用对象来构建查询条件,从而避免了SQL字符串拼接的问题,同时也增加了代码的可读性和安全性。 #### 7. Linq To Sql进阶系列(七)...

    linq to sql实现分层与gridview使用实现增删改

    在.NET框架中,LINQ(Language Integrated Query,语言集成查询)是一种强大的数据查询技术,它允许开发者使用自然、直观的代码来查询各种数据源。在本教程中,我们将重点讨论如何利用LINQ to SQL实现分层架构,并...

    LINQ TO SQL DEMO

    【标题】"LINQ TO SQL DEMO"是一个关于使用LINQ (Language Integrated Query) 技术与SQL数据库交互的示例项目。LINQ是.NET框架中的一项重要特性,它允许开发者使用C#或Visual Basic等语言的语法直接进行数据查询,...

    LINQ to SQL可视化调试工具

    **LINQ to SQL 可视化调试工具** LINQ (Language Integrated Query) 是.NET Framework中的一项强大技术,它允许开发者使用自然的编程语言语法来查询数据。LINQ to SQL是.NET Framework下的一个ORM(Object-...

    ASP.NET MVC+LINQ TO SQL登陆

    在这个场景中,我们将讨论如何在ASP.NET MVC项目中实现一个使用LINQ to SQL的登录功能。 LINQ(Language Integrated Query,语言集成查询)是.NET Framework的一部分,它允许开发者使用C#或VB.NET等语言的语法来...

    Linq to sql 教程

    【Linq to sql 教程】是一门针对初学者精心设计的教程,旨在帮助学习者逐步掌握使用Linq(Language Integrated Query,语言集成查询)与SQL进行数据操作的技术。Linq是.NET框架中的一个强大特性,它允许开发人员在C#...

    LINQ to SQL手册

    **LINQ to SQL** 是 .NET Framework 中的一个技术,它允许开发者使用 C# 或 VB.NET 语言的查询表达式语法来操作数据库。本手册详细介绍了使用 LINQ to SQL 进行数据查询、操作和更新的各种方法,涵盖了从基础到高级...

    Linq to sql 和 Linq to Entity 高级查询

    实现linq多个查询条件连接功能(支持linq to sql 和linq to entity)。 按多个指定属性排序功能。 不同参数的lamdba表达式条件间的转换功能。

    LINQ to SQL.pdf

    2. **无需O/R设计器构建操作**:即使不使用Object Relational Designer(O/R设计器),你也可以通过代码直接创建和执行查询,灵活地构建数据库操作逻辑。 3. **使用O/R设计器与自定义对象**:O/R设计器提供了一种...

    c#linq to sql

    C# LINQ to SQL 是微软.NET Framework中的一种数据查询技术,它允许开发人员使用C#语言直接对SQL数据库进行操作,极大地简化了数据库交互的工作。LINQ(Language Integrated Query,语言集成查询)是.NET Framework ...

    详细介绍linq to sql的使用方法

    详细介绍linq to sql的使用方法和注意要点

    linq to sql 学习笔记

    - **什么是LINQ to SQL**:它是.NET Framework 3.5引入的一个ORM(对象关系映射)工具,使开发者能够使用C#或VB.NET的查询表达式来操作数据库,将SQL查询语句转换为易于理解和维护的代码。 - **隐含类型局部变量*...

    LINQ To Sql学习文档

    LINQ To SQL 作为 LINQ 的一部分,主要用于处理关系型数据库中的数据,它能够将 SQL 查询语句转换为 .NET 语言中的对象操作。 #### 二、Visual Studio 2008 新特性及其对 LINQ 的支持 - **.NET Framework 对重定向...

    Linq to Sql 教程大全

    **LINQ to SQL** 是一种使开发人员能够使用面向对象的方法访问数据库的技术。它提供了将数据库表映射到.NET Framework中类的能力,允许开发人员通过编写LINQ查询而不是SQL语句来操作数据。 #### 二、LINQ to SQL 的...

    Linq To SQL

    **LINQ to SQL** 是.NET Framework 3.5中引入的一种对象关系映射(ORM)技术,它允许开发者使用C#或VB.NET等.NET语言直接对数据库进行操作,而无需编写大量的SQL语句。通过LINQ(Language Integrated Query),...

Global site tag (gtag.js) - Google Analytics