将实体框架模型添加到项目中

man*_*ans 5 entity-framework visual-studio-2010

我有问题将实体框架模型添加到我的项目中.这是我在做的事情:

1-右键单击项目

2-选择添加

3-在对话框中选择已安装模板中的数据.

4-在安装模板中我看不到ADO.NET实体框架模板.

我应该安装什么?

我使用NuGet安装Entity framework 4.2.0.0但没有成功.

我正在使用Visual Studio 2010

编辑:在答案的评论中寻找信息.

Cod*_*ior 4

您尝试使用实体框架的哪种方法?最直接的(在我看来)是 CodeFirst。

数据库优先或模型优先

如果您使用向导来创建模型,

  1. 右键单击项目 > 添加新项目
  2. 无论您使用哪种语言,都应该有一个数据节点。在该节点下,选择 ADO.NET 实体数据模型。
  3. 使用设计器或向导对 ORM 映射进行建模

代码优先

(您可以使用现有数据库执行此操作,因此该名称有点用词不当)

  1. 右键单击项目 > 添加类
  2. 为您计划的业务对象之一命名(如果使用现有数据库,如果类与数据库中的表完全匹配,则可以按名称映射类)
  3. 大纲属性(如果使用现有数据库,如果属性与数据库中的字段完全匹配,则可以按名称映射属性)
  4. 右键单击项目 > 添加库包引用
  5. 在 Online>All 下搜索 Entity,然后安装 Entity Framework 包(如果已经安装,可能只需要引用即可。
  6. 您可能需要在实体类中解析 using 语句(或者如果使用 VB.NET 则包含语句)。

例子

using System;
using System.Collections.Generic;
using System.Linq;
using System.ComponentModel.DataAnnotations;
using System.Collections.ObjectModel;
using System.Data;
using System.Data.SqlClient;
using System.Data.Common;

namespace Kiersted.Keps.BusinessObjects
{
    [Table("Search", Schema = "mySchema")]
    public class BatchSearch : KepsBusinessObject, IKepsBusinessObject
    {

        public BatchSearch() { }

        public BatchSearch(DateTime created)
        {
            this.Created = created;
        }

        #region Data Properties

        [Key]
        [Column("BatchSearchID")]
        public int SearchId{ get; set; }

        [Column("uidQueueMaster")]
        public Nullable<int> uidQueueMaster { get; set; }

        [Column("DateCreated")]
        public DateTime Created { get; set; }

        [Column("DateCompleted")]
        public Nullable<DateTime> Completed{ get; set; }

        public string QueryTerms { get; set; }

        [NotMapped]
        public string LocalProperty { get; set; }
    }
}
Run Code Online (Sandbox Code Playgroud)

注意:如果您使用现有数据库,则可以将类命名为与表相同的名称,或者将 Table 属性添加到类声明中。如果您将表放入不同的架构(默认为 dbo),那么您将需要 Table 标记(无论名称如何),以便您可以指定架构。

注意:如果您正在使用现有数据库,则可以将属性命名为与相应字段相同的名称,也可以添加 Column 属性。