Tag: entity framework

entity framework上下文6.1.3没有刷新/销毁?

在此unit testing中,我将validation内容字节列的MD5是否已正确计算,保留和提取。 但是,似乎entity framework(6.1.3)上下文未刷新/销毁,因为在原始SQL UPDATE显然生效后,但在使用新上下文获取行时未显示。 namespace UnitTests { [TestClass] public class TestDataPacketServiceDebug { [TestInitialize] public void Setup() { CommonMethods.ResetDatabase(); try { CommonMethods.ResetDataPacketDirectory(); } catch (DirectoryNotFoundException) { } } [TestCategory(“DataPacketService”), TestMethod] public void TestGetLocalFilePathDebug() { // Persist a DataPacket int dataPacketId; using (var testDBContext = new TestDBContext()) { DataPacket dataPacket = new DataPacket { Content = […]

基于角色的安全性在breezejs和EF6中

我在一个具有3个主要安全角色的项目中使用Breeze.js,AngularJS,Web API和EF6。 让我们说高级,中级和低级。 在这些示例中,我有Person,Company,LowLevelSecret,MediumLevelSecret,HighLevelSecret实体。 安全问题1:在第一个示例中,我希望能够保护对整个实体的访问。 所有安全角色(低级别,中级别和高级别)都应该能够访问Person实体。 只有具有匹配级别或更高级别的用户才能访问保存特权信息的秘密实体。 例如我可能有。 class Person { public int Id { get; set; } public string Name { get; set; } public LowLevelSecret LowLevelSecret { get; set; } public MediumLevelSecret MediumLevelSecret { get; set; } public HighLevelSecret HighLevelSecret { get; set; } } LowLevelSecret,MediumLevelSecret和HighLevelSecret看起来像这样: class LowLevelSecret { public int Id { […]

无法访问具有group by的字段和使用linq的多个连接

我想只列出那些平均值与记录不同的类别。 这种差异存在于2个表中: TestOperation,TestOperationDifference 我想计算以下3个字段的平均值: TestOperation:DiffPerc If DiffPerc < 100 "Difference is there and take value of DiffPerc to calculate average" else "Dont take that record" TestOperationDifference:DiffPerc,DiffRec If DiffPerc < 100 "Difference is there and take value of DiffPerc and DiffRec to calculate average" else "Dont take that record" finalAverage=( Average(TestOperation.DiffPerc) + Average(TestOperationDifference.DiffPerc) + Average(TestOperationDifference.DiffRec) )/3 […]

合并从不同表中投射到一个实体的两个iqueryable

我试过这个答案 , 这一个和这个合并两个iqueryables。 但我总是收到以下错误: “Estudio”类型出现在单个LINQ to Entities查询中的两个结构不兼容的初始化中。 可以在同一查询中的两个位置初始化类型,但前提是在两个位置都设置了相同的属性,并且这些属性以相同的顺序设置。 我正在从两个不同但相似的entity framework实体(EXAMEN和EXPLORACION)映射到我的域实体Estudio,具有以下代码。 IQueryable listExamen = context.Set().Project().To(); IQueryable listExploracion = context.Set().Project().To(); var listCombined = listExamen.Concat(listExploracion); 无论如何使用两个列表的合并生成IQueryable(不可枚举)? 如果使用AsEnumerable() ,则在内存上执行以下filter(Order,Take等)。 所以我需要合并列表,但仍然能够将filter应用于合并列表而不执行查询。 //This will force the next condition is executed on memory var listCombined = listExamen.AsEnumerable().Concat(listExploracion); 那可能吗?

我应该使用ObjectContext使用关键字吗?

我已经阅读过这个网站或CodeProject的某个地方,好的规则是,如果某个类已经实现了IDisposable接口而且只有你应该使用关键字,因为使用关键字翻译成MSIL是try / finally阻塞这样的东西: try { //some logic } finally { if (obj != null) { obj.Dispose(); } } 但是在观看Entity Framework的教程时,我遇到了类似这样的事情: using(SampleBEntities db = new SampleBEntities()){//some logic here} 和SampleBEntitiesinheritance自ObjectContext并在MSDN lib中ObjectContext没有实现IDisposable?

“ORA-00932:不一致的数据类型:当使用entity framework尝试保存大型xml时,预期NUMBER获得NCLOB”错误

当我尝试使用ADO.NET Entity Framework将带有大型xml的新记录插入带有XmlType列的oracle表时,我收到以下错误。 Oracle.DataAccess.Client.OracleException Message=ORA-06550: line 5, column 22: PL/SQL: ORA-00932: inconsistent datatypes: expected NUMBER got NCLOB ORA-06550: line 4, column 1: PL/SQL: SQL Statement ignored 映射到此列的属性的数据类型是string。 但是当我尝试插入一个小的xml时,它会保存它没有任何问题。

entity framework,代码优先:将主 – 细节与零对一关系相结合

我使用代码首先EF有一个简单的主 – 细节关系: public class User { public string Id { get; set; } public ICollection Tasks { get; set; } } public class Task { public string Id { get; set; } [Required] public string UserId { get; set; } public User User { get; set; } } 现在我想修改它,以便用户可以完成一项最重要的任务。 所以我修改了User类来添加它: public class User { […]

entity framework连接字符串定义

我只是想知道, entity framework连接字符串究竟是什么意思? 喜欢: metadata=res://*/Models.Model1.csdl|res://*/Models.Model1.ssdl|res://*/Models.Model1.msl;provider=System.Data.SqlClient;provider connection string=”data source=testSource;initial catalog=CatalogName;user id=sa;password=***********;multipleactiveresultsets=True;application name=EntityFramework” 我知道provider = System.Data.SqlClient; provider connection string =“data source = testSource; initial catalog = CatalogName; user id = sa; password = ** 任何人都可以告诉我字符串metadata=res://*/Models.Model1.csdl|res://*/Models.Model1.ssdl|res://*/Models.Model1.msl;是什么metadata=res://*/Models.Model1.csdl|res://*/Models.Model1.ssdl|res://*/Models.Model1.msl; 意思? 而且,还有一件事我需要确认,如果我想在实体连接字符串中编辑,我能做到吗?

在Entity Framework中创建递归实体的正确方法是什么?

我目前正在使用VS 2010 RC,我正在尝试创建一个包含递归自引用实体的模型。 目前,当我从模型中导入实体时,我得到一个错误,指示父属性不能成为关联的一部分,因为它设置为“已计算”或“身份”,但我不确定为什么会这样做。 我一直在手动编辑文件来解决这个错误,但是模型根本不起作用。 使递归实体在Entity Framework中工作的正确方法是什么。 默认情况下导入的模型不起作用。 我已经尝试了几次调整,每次都会得到不同类型的错误。 在这一点上,我正在寻找解决方案和解释为什么解决方案是正确的。 相关数据库对象 CREATE TABLE [dbo].[Appointments]( [AppointmentId] [int] IDENTITY(1,1) NOT NULL, [Description] [nvarchar](1024) NULL, [Start] [datetime] NOT NULL, [End] [datetime] NOT NULL, [Username] [varchar](50) NOT NULL, [RecurrenceRule] [nvarchar](1024) NULL, [RecurrenceState] [varchar](20) NULL, [RecurrenceParentId] [int] NULL, [Annotations] [nvarchar](50) NULL, [Application] [nvarchar](100) NOT NULL, CONSTRAINT [PK_Appointments] PRIMARY KEY CLUSTERED […]

使用Code First模拟3个表之间的多对多关系

我有以下3个实体: 用户 帐户 角色 这种关系就像 一个用户可以拥有多个帐户 一个帐户可以属于许多用户 每个用户都在帐户中有一个角色 有一些预定义的角色(在枚举角色中定义) 我到目前为止: public class User { public int Id { get; set; } public ICollection Accounts { get; set; } } public class Account { public int Id { get; set; } public ICollection Users { get; set; } } public class Role { public int Id […]