Questions tagged «entity-framework»

有关ADO.NET实体框架的问题,请参阅.NET Framework的对象关系映射(ORM)工具。如果适用,请添加特定于版本的标签。请勿对实体框架核心问题使用此标签。请改用entity-framework-core。

9
实体框架-代码优先-无法存储List <String>
我写了这样的课: class Test { [Key] [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)] public int Id { get; set; } [Required] public List&lt;String&gt; Strings { get; set; } public Test() { Strings = new List&lt;string&gt; { "test", "test2", "test3", "test4" }; } } 和 internal class DataContext : DbContext { public DbSet&lt;Test&gt; Tests { get; set; } …

10
LINQ to Entities异常不支持指定的类型成员'Date'
在执行以下语句时出现异常。 DateTime result; if (!DateTime.TryParse(rule.data, out result)) return jobdescriptions; if (result &lt; new DateTime(1754, 1, 1)) // sql can't handle dates before 1-1-1753 return jobdescriptions; return jobdescriptions.Where(j =&gt; j.JobDeadline.Date == Convert.ToDateTime(rule.data).Date ); 例外 The specified type member 'Date' is not supported in LINQ to Entities. Only initializers, entity members, and …

9
如何通过实体框架按ID删除对象
在我看来,在使用如下所示的实体框架删除对象之前,我必须先检索一个对象 var customer = context.Customers.First(c =&gt; c.Id == 1); context.DeleteObject(customer); context.Savechanges(); 所以我需要打两次数据库。有没有更简单的方法?

5
插入/更新多对多实体框架。我该怎么做?
我正在使用EF4和它的新功能。我的项目中有很多很多,似乎无法弄清楚如何插入或更新。我建立了一个小项目,只是为了看看应该如何编码。 假设我有3张桌子 类别:ClassID-ClassName 学生:StudentID-名字-姓氏 StudentClass:StudentID-ClassID 添加所有关系并通过模型浏览器更新了模型后,我注意到没有出现StudentClass,这似乎是默认行为。 现在,我需要同时进行插入和更新。你怎么做呢?我可以下载示例的任何代码示例或链接,还是可以节省5分钟?

7
不先查询就更新记录?
可以说我查询数据库并加载项目列表。然后,我以详细视图视图的形式打开其中一个项目,而不是从数据库中重新查询该项目,而是从列表中的数据源创建该项目的实例。 有没有一种方法可以更新数据库记录而无需获取单个项目的记录? 这是我现在如何做的一个示例: dataItem itemToUpdate = (from t in dataEntity.items where t.id == id select t).FirstOrDefault(); 然后,在拉出记录后,我会更新项目中的一些值并将记录推回去: itemToUpdate.itemstatus = newStatus; dataEntity.SaveChanges(); 我想会有更好的方法做到这一点,有什么想法吗?

4
代码优先:独立协会与外键协会?
每当我开始从事一个新项目并设计POCO时,我都会与自己进行一次精神辩论。我看过很多教程/代码示例,这些示例似乎偏爱外键关联: 外键协会 public class Order { public int ID { get; set; } public int CustomerID { get; set; } // &lt;-- Customer ID ... } 与独立协会相反: 独立协会 public class Order { public int ID { get; set; } public Customer Customer { get; set; } // &lt;-- Customer object …

9
Linq:有条件地向where子句添加条件
我有这样的查询 (from u in DataContext.Users where u.Division == strUserDiv &amp;&amp; u.Age &gt; 18 &amp;&amp; u.Height &gt; strHeightinFeet select new DTO_UserMaster { Prop1 = u.Name, }).ToList(); 我想根据是否向运行此查询的方法提供了这些条件来添加年龄,身高等各种条件。所有条件都将包括用户部门。如果提供了年龄,我想将其添加到查询中。同样,如果提供了高度,我也想添加。 如果要使用sql查询完成此操作,我将使用字符串生成器将其附加到主strSQL查询中。但是在Linq中,我只能想到使用IF条件,在该条件下我将写入相同的查询三次,而每个IF块都有一个附加条件。有一个更好的方法吗?

8
仅支持初始化程序,实体成员和实体导航属性
我收到此异常: LINQ to Entities不支持指定的类型成员“付费”。仅支持初始化程序,实体成员和实体导航属性。 public ActionResult Index() { var debts = storeDB.Orders .Where(o =&gt; o.Paid == false) .OrderByDescending(o =&gt; o.DateCreated); return View(debts); } 我的模特班 public partial class Order { public bool Paid { get { return TotalPaid &gt;= Total; } } public decimal TotalPaid { get { return Payments.Sum(p =&gt; …

8
实体框架刷新上下文?
我怎样才能刷新自己的背景?我有基于数据库视图的实体,当我对一个表进行更新时,该实体具有视图的导航属性,该实体是更新的,但视图不会刷新以符合新的更新...只是想从中获取新信息Db数据。谢谢!

11
如何阻止Entity Framework尝试保存/插入子对象?
当我使用实体框架保存实体时,我自然假定它只会尝试保存指定的实体。但是,它也试图保存该实体的子实体。这导致了各种完整性问题。如何强制EF仅保存要保存的实体,因此忽略所有子对象? 如果将属性手动设置为null,则会收到错误消息“操作失败:由于一个或多个外键属性不可为空,因此无法更改关系。” 因为我将子对象专门设置为null,所以EF会单独处理它,这会适得其反。 为什么我不想保存/插入子对象? 由于在注释中来回讨论了这一点,因此我将给出一些理由说明为什么我希望让我的子对象保持不动。 在我正在构建的应用程序中,EF对象模型不是从数据库中加载的,而是用作我在解析平面文件时填充的数据对象。对于子对象,其中许多对象引用查找表,这些查找表定义了父表的各种属性。例如,主要实体的地理位置。 由于我自己填充了这些对象,因此EF假定这些是新对象,需要与父对象一起插入。但是,这些定义已经存在,我不想在数据库中创建重复项。我仅使用EF对象进行查找并在主表实体中填充外键。 即使使用真实数据的子对象,我也需要先保存父对象并获取主键,否则EF似乎一团糟。希望这能提供一些解释。

12
在Azure上找不到'Microsoft.SqlServer.Types'版本10或更高版本
我正在尝试在ASP.NET MVC 4中制作一个webapi。该webapi使用了Entity Framework 5 Spatial类型,并且我编写了一个非常简单的代码。 public List&lt;Area&gt; GetAllAreas() { List&lt;Area&gt; aList = db.Areas.ToList(); return aList; } 区域包含DbGeometry。 当我运行此本地方法时,它可以工作,但是当我将其发布为天蓝色时,它会给我这个错误: 此提供者无法使用空间类型和功能,因为找不到程序集“ Microsoft.SqlServer.Types” 10或更高版本。 有人知道如何解决这个问题吗?:) 谢谢!

3
Linq语法-选择多个列
这是我在实体模型中使用的Linq语法 IQueryable&lt;string&gt; objEmployee = null; objEmployee = from res in _db.EMPLOYEEs where (res.EMAIL == givenInfo || res.USER_NAME == givenInfo) select res.EMAIL; 如何选择多列?就像我想选择res.ID一样。我怎么能收到这些呢?我认为IQueryable无法正常工作。这就是所谓的Linq to SQL,对吗?


15
为什么会出现此错误:没有为以下EntitySet / AssociationSet-Entity1指定映射?
我正在使用带有Model First方法的Entity Framework 4。 我开始了该项目,设计了实体并生成了数据库。一切正常。 然后,我需要回去向模型添加另一个实体。但是,当我将实体拖到EDMX时,出现以下错误: 好的!我只需要将Entity1映射到表即可。我正在使用“模型优先”方法,我希望它在生成DDL时为我创建表。 如何解决此错误?

3
实体框架可查询异步
我正在使用Entity Framework 6处理一些Web API,而我的控制器方法之一是“获取全部”,期望从数据库中以形式接收表的内容IQueryable&lt;Entity&gt;。在我的存储库中,我想知道是否有任何有利的原因来异步执行此操作,因为我是初次使用带有异步功能的EF。 基本上可以归结为 public async Task&lt;IQueryable&lt;URL&gt;&gt; GetAllUrlsAsync() { var urls = await context.Urls.ToListAsync(); return urls.AsQueryable(); } 与 public IQueryable&lt;URL&gt; GetAllUrls() { return context.Urls.AsQueryable(); } 异步版本实际上会在这里带来性能上的好处吗?还是我先投影到一个列表(使用异步方法,然后转到IQueryable)会导致不必要的开销?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.