簡単な例をLinqtoSqlクラス学習のC#

転載  https://www.cnblogs.com/zouzf/archive/2012/02/28/2371740.html 

クラスへのアクセスの詳細LinqtoSql、データベースの操作をパッケージ化、データベースの接続操作が非常に簡単になります。ここでは簡単な例です。 

最初のステップ:LinqtoSqlクラスを追加します。

1.内部を入れNrothWindデータベースソリューションをダウンロードし、コンソールアプリケーションプロジェクトを作成します。その後、右クリックコンソールプロジェクトは、クラスを選択し、[追加]を選択します

1は、Northwindデータベースに接続されるため、LINQ to SQLクラスを選択し、名前は、NorthWindDBに変更されました。

2.この時点で、次の解決策の内容

3、NorthWindDB.dbmlは、ファイルをダブルクリックし、マウスの左編集ボックス、プレスF4をクリックし、NorthWindDB.dbmlファイルの属性情報をポップアップ表示されます右は、関連します

NorthWindDBDataContextが自動的に継承のDataContextクラスにクラスを生成するコンパイラであることは、クラスは、データベースの動作の詳細をカプセル化しています。、デフォルトは空である、我々はNorthWindDBContそれに追加します(名前空間があり、NorthWindDBDataContextクラス)コンテキスト・ネームスペース。エンティティの名前空間(コンパイラがテーブルに対応するこれらのクラスは、この名前空間に所属してアウトマッピングする、私たちはテーブルが対応するクラスにマッピングされている使用して当社のデータベース(クラス属性テーブルに列に相当)にリンクします)デフォルトでは、フィルNorthWindDBEnts空です。

 

ステップ2:データベースへの接続の可視化

1.ビューのツールバーを選択し、データ接続でサーバーエクスプローラー、右クリックを選択し、[追加]リンクを選択します

2. [追加接続]ダイアログボックスがポップアップし、[変更]をクリックします

3.データソースの変更ポップアップダイアログボックスは、Microsoft SQL Serverデータベースファイルを選択します

4、ポイントのブラウザ

5.データベースファイルを選択してちょうどNorthWind.MDFをダウンロード

6、点左下角的测试,如不成功,重新操作 第二步。如果成功,打开服务器资源管理器,可以看到NorthWind数据库已经加载成功。双击NorthWindDB.dbml文件,把里面的表 Customers 、 Orders拖过去

这个时候,编译器就会自动在 NorthWindDBEnts命名空间里创建两个类来对应着这两个表。

打开NorthWindDB.designer.cs文件,NorthWindDBEnts命名空间下的代码如下:

 

第三步:主代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建NorthWindDBCont.NorthWindDBDataContext的实例
            NorthWindDBCont.NorthWindDBDataContext ctx = new NorthWindDBCont.NorthWindDBDataContext();

            //查询住在London的顾客
            var q = from x in ctx.Customers
                    where x.City == "London"
                    select new { x.ContactName, x.City};

            if (q.Count() != 0)
            {
                foreach (var item in q)
                {
                    Console.WriteLine(item);
                }              
            }
            else
            {
                Console.WriteLine("nobody in London");
            }
            Console.WriteLine();

            //创建NorthWindDBEnts.Customers 的实例
            NorthWindDBEnts.Customers myCustomer = new NorthWindDBEnts.Customers();

            //对表Customers进行查询,把查询得到的住在London的顾客
//并把查得的第一个顾客返回赋给NorthWindDBEnts.Customers类 的实例
            myCustomer = ctx.Customers.First(a => a.City == "London");
            Console.WriteLine(myCustomer.ContactName);
            
            Console.ReadKey();
        }
    }
}

 

输出如下:

おすすめ

転載: www.cnblogs.com/jshchg/p/12366629.html