Tag: entity framework

Entity Framwork 7.0.0-rc1-final现有数据库“数据库优先”的逆向工程师

我在我的项目中进行逆向工程 。 因为我们的项目遵循数据库第一种方法。 通过此命令,我实现了逆向工程,但没有使用RevEng命令。 dnx ef DbContext Scaffold “Server=databasename;Database=data;UserID=*;Password=*;” EntityFramework.MicrosoftSqlServer 我尝试过很多东西,但仍然无法在ef下找到RevEng命令。 在一个项目中,我正在使用 “commands”: { “web”: “Microsoft.AspNet.Server.Kestrel”, “ef”: “EntityFramework.Commands” } 和 “dependencies”: { “EntityFramework.Commands”: “7.0.0-rc1-final”, “EntityFramework.Core”: “7.0.0-rc1-final”, “EntityFramework.MicrosoftSqlServer”: “7.0.0-rc1-final”, “EntityFramework.MicrosoftSqlServer.Design”: “7.0.0-rc1-final”, “EntityFramework.Relational.Design”: “7.0.0-rc1-final”, } 那么如何在dnx中启用RevEng命令,帮我解决!

使用Entity Framework,我应该在我的存储过程中使用RETURN还是SELECT?

我目前正在尝试使用Entity Framework的存储过程,我遇到了返回类型的问题。 我的存储过程的返回类型是BIT。 这是我的存储过程的代码(简化): CREATE PROCEDURE [dbo].[sp_makeStuff] @id int AS BEGIN DECLARE @status BIT BEGIN TRY BEGIN TRANSACTION DELETE FROM MyTable WHERE Id = @id SET @status = 1 COMMIT END TRY BEGIN CATCH SET @status = 0 ROLLBACK END CATCH RETURN @status END END 我在我的.edmx文件中添加了sp_makeStuff,返回类型为bool?。 然后,我尝试使用下面的代码执行它 using (var ctx = new MyEntities()) { ObjectResult […]

如何让EF6生成包含多个聚合列的高效SQL?

我正在尝试使用Entity Framework(v6.1.3)为具有多个聚合的查询生成高效的SQL。 这是一个简化的例子。 表: CREATE TABLE [dbo].[CaseAttorney]( [CaseAttorneyID] [int] IDENTITY(1,1) NOT NULL, [CaseNumber] [varchar](30) NOT NULL, [AttorneyID] [int] NOT NULL, [DateAssigned] [datetime] NULL, [DateUnassigned] [datetime] NULL, CONSTRAINT [PK_CaseAttorney] PRIMARY KEY CLUSTERED ( [CaseAttorneyID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] […]

使用带有Entity Framework Contains语句的元组

我有一个实体,其引用是标识符和环境的组合。 我想实现一个函数,允许用户传递(ID,Environment)元组列表并返回所需的实体。 是否可以在这种情况下使用Contains()? 怎么样? 通过简单的参考,就像它一样简单 model.MyEntities.Where(e => myIds.Contains(e.Id)) 编辑 :澄清一下,我不是在寻找如何使用Contains()方法来检索ID列表; 我上面写的这句话做到了这一点。 我正在寻找的是能够检索与(ID,Environment)元组匹配的实体列表,而不仅仅是ID。

EntityCollections设置EntityReference.EntityKey以填充Collection

遇到entity framework问题。 我一直在用EntityKey填充EntityReferences,以便在我添加实体引用时不再需要查询数据库。 现在我想为一个Association(EntityCollection)做同样的事情,但我不知道从哪里开始。 下面是我想要做的细节 表 CREATE TABLE [dbo].[Foo]( [FooId] [int] IDENTITY(1,1) NOT NULL, [FooName] [nvarchar](50) NOT NULL, ) CREATE TABLE [dbo].[Bar]( [BarId] [int] IDENTITY(1,1) NOT NULL, [BarName] [nvarchar](50) NOT NULL, CONSTRAINT [PK_Bar] PRIMARY KEY CLUSTERED ) CREATE TABLE [dbo].[FooBar]( [FooId] [int] NOT NULL, [BarId] [int] NOT NULL, CONSTRAINT [PK_FooBar] PRIMARY KEY CLUSTERED ) ALTER […]

使用Entity Framework删除多对多关系

我有三个表学生(studID,fullName,性别……),注册(studID,courseID,日期)和课程(courseID,courseName,…)。 我使用下面的代码删除了包含studID 001的Enroll表中的所有记录,其中有大约三个学生签名的课程。 但是,它只删除一条记录。 using(var context = new DBEntities()) { var _stud = (from s in context.Students where s.studID == “001” select s).FirstOrDefault(); var _course = _stud.Courses.FirstOrDefault(); _course.Students.Remove(_stud); context.SaveChanges(); } 我在这里想念什么?

EF Code First:无法连接到SQL Server

我正在尝试使用代码优先方法创建数据库。 当我运行以下代码时,我收到以下exception。 我们怎样才能克服这一点? 笔记: 我的系统上有SQL Server 2008 R2。 我没有使用任何配置文件。 我假设它将使用约定创建数据库 没有开放的连接; 我刚刚重启系统并进行了测试。 仍然是同一个问题。 EntityFramework.dll的运行时版本是v4.0.3xxx 例外 : 提供程序未返回ProviderManifestToken字符串 消息 : 此操作需要连接到“主”数据库。 无法创建与“主”数据库的连接,因为已打开原始数据库连接并且已从连接字符串中删除凭据。 提供未打开的连接。 内在例外 : 建立与SQL Server的连接时发生与网络相关或特定于实例的错误。 服务器未找到或无法访问。 validation实例名称是否正确,以及SQL Server是否配置为允许远程连接。 (提供程序:命名管道提供程序,错误:40 – 无法打开与SQL Server的连接) 码: using System.Data.Entity; namespace LijosEF { public class Dinner { public int DinnerID { get; set; } public int Title { get; […]

EntityCommandExecutionException未处理

我正在使用EF 4.1 MVC3编写应用程序。 我正在尝试在它上面实现CRUD。 问题是,当我尝试实现第一个索引页面时,它给了我一个错误。 我正在使用中央服务器的外部数据库。 我只是在尝试一个简单的注册表单。 我有第一个模型类RegModel.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace Registration.Models { public class Register { public int Id { get; set; } public string UserName { get; set; } public string Password { get; set; } public string Email { get; set; } public string Address { […]

如何克隆POCO实体并添加到上下文

我正在使用EF4,我已经使用我的数据库结构中的代理创建了POCO对象。 我有一个POCO(对象),它与其他实体有很多关系。 我使用DataContractSerializer和BinaryFormatter创建了对象的深层副本,并将其称为clonedObject。 用于克隆的函数是: public T CloneProxy(T source) { var dcs = new System.Runtime.Serialization .DataContractSerializer(typeof(T)); string filePath = “Initiative.txt”; using (FileStream file = new FileStream(filePath, FileMode.Create)) { (new BinaryFormatter()).Serialize(file, source); } context.CreateProxyTypes(new Type[] { typeof(Initiative) }); using (FileStream file = new FileStream(filePath, FileMode.Open)) { return (T)(new BinaryFormatter()).Deserialize(file); } } 现在我有了clonedObject,如何将其添加到上下文中? 如何将其添加到数据库? 我的目标(只是给你一个关于POCO倡议的想法): Initiative { InitI […]

如何使用递归关系向DbContext添加实体,同时避免重复添加?

我正在使用Entity Framework 4.4,我有一个像这样的One-To-Many关系模型: class Item { public string keyPart1 { get; set; } public string keyPart2 { get; set; } public virtual Container container { get; set; } public string ContainerId { get; set; } } // Idea is that many Items will be assigned to a container class Container { public string ContainerId { […]