环境:具有EF(数据库优先控制数据库设计)和Sql Server的ASP.NET MVC应用程序. 我有许多具有用户生成的属性的实体.我需要一种让用户能够指定这些元素的顺序的方法. 稍微详细一点:用户可以创建一个“模板”,然后可以向其中添加“属性”.这些“属性”需要排序.还有> = 4其他不同的实体类
我意识到自己拼写的列标题中的一个不正确,因此我在模型中进行了更改,并创建了一个新迁移以将其更新到数据库中.在我意识到实际上似乎发生的事情是新的列替换了现有的列并擦除了所有数据之前,所有方法都运行良好.碰巧的是,由于这是一个教程数据库,将数据放回原处就没什么大不了,只需
我对EF方法“附加”和“更新”有一些困惑. 据我了解,当调用“更新”时,特定实体内的每个属性都会被修改. 另一方面,“附加”方法以“未修改”状态启动实体.然后,当对特定属性进行操作时,仅修改该特定属性.因此,“附加”对于单独的属性更改更有用,而“更新”在您想要更新实体中的每
我正在尝试将数据访问同步查询转换为异步查询,到目前为止,除了选择返回IQueryable< T>的列表之外,我都进行了转换. 到目前为止,这是我所做的: [Dependency] public SampleContext db { get; set; } public async System.Threading.Tasks.Task<Profile> Add(Profile it
我正在尝试使用Entity Framework和LINQ从数据库检索记录.它的工作原理大致符合预期,但是对于带有WHERE语句的错误,我不太清楚. var nodeId = "001"; //This works and returns the record I am looking for var nodeDisplayName = ("#" + nodeId); var filteredNodes = dbContext
我有两张桌子. 表A,存储软件包数据. table a PackageId | From | To | Created ----------------------------------------- a1 | Japan | USA | 2019/2/22 16:00 a2 | Japan | USA | 2019/2/23 16:00 a3 | Japan | USA | 2019/2/24 16:00 a4 | Jap
我正在使用具有新ASP.Net Core 2.0应用程序的现有数据库.该数据库具有两个模式,dbo和notinapplication.我不想创建notinapplication模式表的模型.所以我在程序包管理器中使用以下代码,它可以正常工作. Scaffold-DbContext "Server=localhost; Database=TestServer; Trusted_Connec
我正在学习EF Core和LINQ中的多对多联合表.我有以下模型: public class ProjectManager { public int ProjectID { get; set; } public Project Project { get; set; } public string AppUserID { get; set; } public AppUser AppUser {
我这里有一个稍微有些奇怪的场景,我有一个实体和一个多对多表.下表如下所示: AssetHeader.cs [Table("AssetHeader", Schema = "assets")] public class AssetHeader { public Guid Id { get; set; } public virtual ICollection<AssetHeaderEquipment> AssetHeaders { ge
使用.Net Core 2.2中的实体框架,我想将EF生成的所有SQL语句记录到Visual Studio中的“调试输出”窗口中. 在.Net Framework中,我只需要将此行添加到DbContext构造函数中: Database.Log = s => System.Diagnostics.Debug.WriteLine(s); 在EF中,我正在尝试以下操作.它会编译,并且会
我有一个IQueryable和一个T类型的对象. 我想做IQueryable().在哪里(o => o.GetProperty(fieldName)== objectOfTypeT.GetProperty(fieldName)) 所以… public IQueryable<T> DoWork<T>(string fieldName) where T : EntityObject { ... T objectOfTypeT = ...; .
在我的上一个项目中,我决定使用Entity Framework,并且一切顺利,直到尝试使用“ where in”获取数据为止,但出现错误. 经过微小的搜索,我得出了this post和that post. 这就是我想要做的 var all = fooelements .Where(l=>controlsToGet
在实体框架中,有一些条件在数据库级别处理,并作为Context.SaveChanges()上的异常传递回EF. 如果要循环创建新实体,则可以通过标准的“ Try Catch”块处理异常,但是如何从SaveChanges()队列中清除有问题的实体呢? 例如(将SaveChanges移动到循环外部没有积极作用,因此在循环内显示在此
我正在将Silverlight的列表(自己的类)返回到服务,此列表中有具有更新值的旧实体和全新的实体,如何使用实体框架将其保存回数据库? 使用cEnts.CardItems.AddObject显然给了我重复的机会.解决方法:您要使用Attach()而不是AddObject(). 附加将获取您的断开连接对象,并让容器知道要对其
是否可以对EntityFramework中的每个实体使用单独的ssdl,csdl和msl文件? 也就是说,我想模块化映射信息. 注意:EdmGen.exe工具将ssdl,csdl和msl信息存储在所有实体的相应文件中. 注意:如果有人使用NHibernate,他应该知道以下事实:NHibernate为每个实体使用单独的映射文件.我想做同样
我正在为asp.net mvc2 Web应用程序编写日志解析器.我使用实体框架作为模型,并且使用我的手动引擎和SqlServer2008 CDC功能来完成日志记录. 在数据库中插入或编辑行时,将记录该操作.但是,实际表中发生的更改与记录这些更改之间的时间间隔很小.当用户单击其中一些时,我需要显示CDC表
因此,我试图为基础存储库类创建一个通用的按ID选择方法.为了实现这一点,我将EF4与POCO一起使用.我使用名为Id的吸气剂创建了一个接口,并成功修改了T4模板,以便在所有返回PK的实体中具有通用Id属性. 问题出在我使用查询时.我正在这样实现: public virtual T GetByID(int id) { r
我有两个表: 客户(ID,客户名) 项目(id,clientid,projecttitle)外键引用clientid-> client.id 当我像这样用EF加载项目时: thisProject = (from p in dataEntity.projects.Include("client") where p.id == INTVALUE select p).FirstOrDefault(); 然
我正在使用Enity Framework从数据库中获取数据.在WCF中,我的方法的返回类型为List< EmployeeTable>.但是我无法在WCF测试客户端中测试我的服务. 我是否需要编写自定义数据合同以返回获取的数据. 编辑: 如何处理这种情况: var query = from c in customers join o in ord
我们有一个“人”表,其中存储了不同类型的人(买方,卖方,代理商等).我们的ORM是Entity Framework CodeFirst(CTP5).我们正在使用存储库模式来实现良好的TDD和模拟.在PersonRepository中,我想返回一个特定的类型,所以我可以做这样的事情: Agent a = repository.Get<Agent>(5005); //
我想用以下代码检查EF 4.0中的表中是否有任何更改: var a = context.Users.GetHashCode(); AddNewUser(); context.SaveChanges(); var b = context.Users.GetHashCode(); a == b,我不知道为什么? 任何帮助将不胜感激!解决方法:GetHashCode绝对为different usage.您无法检测到Obj
我想要一个可以有一个孩子(一个或零个)的实体.这个孩子与父母同类型.我不确定如何设置实体框架,因为我希望每个实体都有两个导航属性.一种用于导航到孩子,另一种用于导航到父母.基本上,它与双向链表的结构完全相同. 我认为这个表结构应该足够了: int | id | PK int | id_ne
[ASP.NET 4.0 / EF 4.1] 你好 我试图使用“ Linq方法”基于日期时间字段来过滤数据源,但是我得到了一个错误:“在这种情况下,仅支持原始类型(例如Int32,String和Guid’).” 我知道实体框架在处理日期时有一些限制,但是我需要一些优雅的解决方案来处理此问题. 我的代码是: public
这可能是一个牵强附会的问题,但是,只要从数据库中加载了实体的新实例(例如,作为linq查询的一部分),对Create的调用或类似方法,就有可能在实体对象中触发回调? 此类回调的目的是从封闭的业务对象传达上下文或一组初始化参数.解决方法:DbContext绝对没有它,但是您可以尝试将其转换回Ob
如果已经提出并回答了这个问题,请原谅我.如果是这样,请指出.我正在使用带有最新Service Pack的VS2010 over .Net 3.5(平台更新不在我的控制范围内). 我有一个存储的过程,它将返回类似以下的行.没有其他列可以用作此实体的键;结果看起来像这样: COUNTRYCODE QUANTITY USA