C# 3.0入门系列(二)

转载 2007年09月28日 16:43:00

在第一篇中,我已经和大家简单介绍了linq。也和大家提起linq是C# 3.0里的一个特性。不过,你去装linq priview时,你会发现,它提供了许多vb的linq代码。从现在的情况看,linq会被移植到.net framework下。在本篇中,笔者将开始更加详细的介绍dlinq。同时,也会介绍很实用的技巧和方法。在这之前,你需要安装s2008 beta2版本。可以到
 http://msdn2.microsoft.com/en-us/vstudio/aa700831.aspx 下载。如果,你的机器上是vs2005的英文版,你还需要安装一个linq preview版本。你可以到下面地址去下载。
http://www.microsoft.com/downloads/details.aspx?familyid=1e902c21-340c-4d13-9f04-70eb5e3dceea&displaylang=en
以后的章节中,笔者将会配合这个版本,进行讲解,并对它里面提供的例子进行详细的说明。

安装linq preview后,你可以在安装目录下,找到安装程序提供的例子。C# 的应该在C:/Program Files/LINQ Preview/C#/Samples/SampleQueries目录下。打开该工程。因为dlinq主要是对数据库进行操作,你还需要准备数据库。例程给你提供的数据库是用./SQLEXPRESS来实现的。说实话,这个版本的数据库实在是难用。我建议大家使用SQL2000 or SQL2005. 你可以在C:/Program Files/LINQ Preview/Data目录下找到一个叫做NORTHWND的数据库文件。如图所示,把它附加到你的服务器上。因为NORTHWND是SQL SERVER附带的例子数据库,你可能需要将原来的删掉,才能附加新的上去。
你也可以到http://msdn2.microsoft.com/en-us/bb330936.aspx 下载for beta2的sample。其数据文件的路径为,LinqSamples/SampleQueries/Data

你在附加这个数据库的时候,有可能碰到SQL2000 附加不上去的问题。你可以给我留言,我这里有SQL2000 的数据库备份。在附加完数据库后,你需要修改程序文件了,让SampleQueries的程序使用你刚附加的数据库。打开SampleQueries的程序,在Solution Explorer中找到DLinqSamples.cs文件,打开它,找到24行。如下的代码。

private readonly static string connString = "AttachDBFileName='" + dbPath + "';Server='" + sqlServerInstance + "';Integrated Security=SSPI;enlist=false";

将它替换为

private readonly static string connString = "Server=yourSever;Database=northwind;User=yourname;Password=yourPassword";

这样,你就可以使用你刚附加的数据库了。或许你要问为什么非要用这个新的数据库,为什么不用SQL SERVER附带,那是因为在这个新的数据库中,我们添加了许多新的东西。^_^

一切都准备好以后,我们就可以来看这个例子了。笔者在这么没有兴趣讲解SampleQueries是如何设计的,也没有兴趣讲解它是如何取到code的。这里我们只讲dlinq。先让我们来看看大体的一个界面。

界面做的很漂亮也很简洁。选择左边目录树,第一个主接点是linq的101例子,前面我也和大家讲过来linq的主要是针对内存操作。dlinq才是针对数据库操作。我们的重点依然在dlinq上。如图所示,选择where接点中第一个,然后右边代码区会显示该段代码,点run sample!,下面会首先出现程序翻译的sql语句,再下面是返回的数据集。

在正式讲解dlinq的语法前,笔者也许还要把northwind数据库中的表以及表之间的关系简单地和大家交代下。

几个表的关系如上图。我们常用的几个要说明下。一个是Customers表为客户表,一个是Orders表为订单表,一个是Products表为产品表,最后一个是Order Details表,为订单详细表。因为northwind是大家已经很熟悉的一个数据库,我就不再做赘言。 下章,我将依然为大家准备最关键的一个环节,影射文件。

Python爬虫入门(二)requests库

一、前言 为什么要先说Requests库呢,因为这是个功能很强大的网络请求库,可以实现跟浏览器一样发送各种HTTP请求来获取网站的数据。网络上的模块、库、包指的都是同一种东西,所以后文中可能会在不...
  • youzhouliu
  • youzhouliu
  • 2017年02月28日 09:52
  • 678

看雪学院-OllyDBG入门系列(二)笔记

OllyDBG 入门系列(二)-字串参考 笔记 原作地址:http://bbs.pediy.com/showthread.php?threadid=21308 作者:CCDebuger   软...
  • Cytosine
  • Cytosine
  • 2017年02月04日 15:10
  • 329

MySQL---数据库从入门走向大神系列(二)-用Java对MySQL进行增删改查

上节已经学会对MySQL进行简单的增删改查了,那么,我们如何实现用Java来对数据库操作增删改呢。 本节将用Java演示对MySQL进行增删改查。 简单的来说,分为4个步骤: 1、加载连接器(驱动) ...
  • qq_26525215
  • qq_26525215
  • 2016年08月06日 15:03
  • 5657

C# 3.0入门(二)

Select 操作先给关注dlinq的朋友们道歉,最近工作实在忙,没有时间来写blog。从本节开始,我们讲dlinq语法咯。我们先从select子句讲起。看下面的例子。    var q =     ...
  • lincnl
  • lincnl
  • 2007年09月12日 14:45
  • 1474

机器学习sklearn之菜鸟入门二

交叉验证的应用cross_validation 1 用于调节参数 2 用于选择模型 3 用于选择特征...
  • daishoulei
  • daishoulei
  • 2017年04月08日 18:03
  • 384

SpringBoot入门系列:第二篇 再学Hello World

Spring-Boot是Spring的新东东,为了让人尽快的使用,它提供了一个非常好的辅助工具,直接为我们生成Maven架构的工程。下面,我们通过helloworld看 一、在浏览器中打开http:...
  • lxhjh
  • lxhjh
  • 2016年06月24日 13:25
  • 27263

Tesseract-OCR学习系列(一)简介

转载自:http://www.jianshu.com/p/0a3386227981 Tesseract Introduction 做了一段时间的OCR。在PC的Visual Stu...
  • striving1234
  • striving1234
  • 2017年09月25日 16:02
  • 167

C# 3.0 入门系列(一)

谈到dlinq,就不得不先说linq。让我们先看看什么是linq。linq是 Language Integrated Query的缩写。那么事实上dlinq就是 Database Language I...
  • Night_Elf
  • Night_Elf
  • 2007年09月28日 16:41
  • 608

C# 3.0 入门系列(一)

谈到dlinq,就不得不先说linq。让我们先看看什么是linq。linq是 Language Integrated Query的缩写。那么事实上dlinq就是 Database Language I...
  • lincnl
  • lincnl
  • 2007年09月12日 14:34
  • 1176

深度学习:Keras入门(一)之基础篇

http://www.cnblogs.com/lc1217/p/7132364.html 1.关于Keras         1)简介                    ...
  • zdy0_2004
  • zdy0_2004
  • 2017年07月07日 16:33
  • 2605
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C# 3.0入门系列(二)
举报原因:
原因补充:

(最多只允许输入30个字)