共用方式為


AdventureWorks Sales 連接 (EDM)

若要使用 實體資料模型 (EDM) 上所建置的可程式化類別,必須開啟與資料之間的連接。與 Adventure Works Sales Model 的連接是根據提供者連接字串及 System.Data.EntityClient 命名空間的 ObjectContext

應用程式組態檔

使用 EDM 的應用程式必須在可執行檔範圍內擁有組態檔。此組態檔包含一個連接字串 (可識別定義模型和對應的結構描述)、一個可識別資料庫管理系統的提供者連接字串,以及一個可識別 System.Data.EntityClient 命名空間的提供者名稱。

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <connectionStrings>
    <add name=" AdvWksSalesEntities" 
         connectionString="metadata=.;
         provider=System.Data.SqlClient;
         provider connection string=
         &quot;Data Source=serverName;
         Initial Catalog=AdventureWorks;
         Integrated Security=True;
         multipleactiveresultsets=true&quot;"
         providerName="System.Data.EntityClient" />
  </connectionStrings>

</configuration>

應用程式程式碼

下列程式碼示範如何開啟與名為 AdventureWorksEntitiesObjectContext 的連接。有了範圍內的應用程式組態檔時,可以使用這一行程式碼開啟連接:AdventureWorksEntities db = new AdventureWorksEntities()

ObjectContext 提供了應用程式使用之資料集合的存取權。下列範例會先開啟 ObjectContextContact 型別的所有執行個體。然後,它會列舉 SalesOrderHeader 的執行個體,並使用根據 SalesOrderHeaderAddress 之間之關聯的導覽屬性,以尋找及顯示一行地址。

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

namespace AdvWrksSalesClient
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                using (AdvWksSalesEntities db =
                                     new AdvWksSalesEntities ())
                {
                    foreach (Contact c in db.Contact)
                        Console.WriteLine("{0}, {1}",
                                 c.LastName, c.FirstName);


                    foreach (SalesOrderHeader soHeader in 
                                          db.SalesOrderHeader)
                    {
                        soHeader.Address1Reference.Load();
                    Console.WriteLine(soHeader.Address1.AddressLine1);

                    }

                }
            }
            catch (System.Data.EntityCommandExecutionException e)
            {
                Console.WriteLine(e.ToString());
            }
        }
    }
}

另請參閱

概念

AdventureWorks Sales 概念結構描述 (EDM)
AdventureWorks Sales 儲存結構描述 (EDM)
AdventureWorks Sales 對應結構描述 (EDM)