即使在创建实体管理器的实体管理器不再可用之后,EclipseLink也可以在实体中加载延迟关系.使用Hibernate 这不起作用,或者至少在该帖子时没有.
其他提供商怎么样?特别是OpenJPA和DataNucleus?
这有什么缺点(除了更复杂的实现)?
我有一个表记录其在字段上的行插入/更新时间戳.
我想将此表中的数据与另一个数据库服务器上的另一个表同步.两个数据库服务器未连接,同步是单向(主/从).使用表触发器不合适
我的工作流程
处理Master表的已删除记录时,问题的复杂性会增加.为了捕获已删除的记录,我认为我必须为先前插入的记录维护一个日志表并使用sql"NOT IN".在处理大型数据集时,这会成为性能问题.
什么是处理这种情况的替代工作流程?
在Visual Studio生成的控制器以及示例应用程序(ContosoUniversity)中,Index操作总是具有类似的功能
var departments = db.Departments.Include(d => d.Administrator);
Run Code Online (Sandbox Code Playgroud)
它与之间的区别是什么?
var departments = db.Departments;
Run Code Online (Sandbox Code Playgroud)
首先我怀疑第一个(使用Include)使视图能够检索department.Administrator.但第二个(没有Include)似乎也能够做到这一点.
asp.net asp.net-mvc entity-framework entity-framework-4.1 asp.net-mvc-3
我有一个具有引用其他实体的属性的实体(示例中为ReferenceEntity).
使用HQL,我可以这样做:
select e.ReferenceEntity from Entity e where e.Id = :entityId
Run Code Online (Sandbox Code Playgroud)
NHibernate会给我一个没有懒惰的ReferenceEntity实例.
通过im尝试查询执行此操作:
Session.QueryOver<Entity>()
.Where(e => e.Id == entityId)
.Select(e => e.ReferenceEntity)
.SingleOrDefault<ReferenceEntity>()
Run Code Online (Sandbox Code Playgroud)
使用QueryOver Nhibernate给了我ReferenceEntity但是懒惰.
我想通过查询来获得ReferenceEntity和eager加载,就像我使用hql一样.
谢谢
我对这个问题感到不满.我确实在互联网上找到了一些关于它的内容,但不是一个明确的答案.我的问题:
我必须在MVC3 Web应用程序的Model部分中的类:ParentClass和ChildClass在ParentClass上有一个属性子类型List
我使用了EF Code First,它在数据库中为我整齐地生成了父表和子表.
现在我需要一个REST服务,它返回一个List或一个ParentClass.
当我从ParentClass中删除属性Children时没有问题.但随着孩子们的到来,我不断收到错误.
错误: "The type System.Data.Entity.DynamicProxies.ParentClass_A0EBE0D1022D01EB84B81873D49DEECC60879FC4152BB115215C3EC16FB8003A was not expected. Use the XmlInclude or SoapInclude attribute to specify types that are not known statically."}
一些代码:
类别:
public class ParentClass
{
public int ID { get; set; }
public string Name {get;set;}
public virtual List<ChildrenClass> Children { get; set; }
}
public class ChildrenClass
{
public int ID { get; set; }
public string MyProperty { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
服务:
[ServiceContract]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
[ServiceBehavior(IncludeExceptionDetailInFaults …Run Code Online (Sandbox Code Playgroud) rest entity-framework ef-code-first asp.net-mvc-3 wcf-web-api
我正在通过Eric Evans的领域驱动设计,他概述了存储库和工厂之间的相互作用.存储库本身将调用DB接口来获取结果集.然后将该结果集传递给工厂,该工厂将理解该结果集以重构该对象.
如果数据本质上是分层的,就像某种树结构那样.例如:
public class Foo
{
public int Id { get; set; }
public string Name { get; set; }
public Foo Parent { get; set; }
public ICollection<Foo> { get; set; }
// Other business like methods here
}
Run Code Online (Sandbox Code Playgroud)
使用DDD我会有我的接口和实现:
public interface IFooRepository
{
Foo Get(int id);
}
public interface IFooFactory<TSource>
{
Foo Create(TSource source);
}
public class SqlFooRepository: IFooRepository
{
private readonly IFooDao dao;
private readonly IFooFactory<SqlDataReader> factory;
public SqlFooRepository(IFooDao dao, IFooFactory factory)
{
this.dao = dao; …Run Code Online (Sandbox Code Playgroud) 我正在开发一个应用程序来帮助我的办公室跟踪和管理评论.在应用程序中,我使用JPA 2.0和Hibernate 3.6.3作为我的底层提供程序.我也使用spring将持久化上下文注入到我的DAO中.我建立了域名,以便有一个评论,一个参与者和一个角色实体.
我遇到的问题是,如果参与者有多个角色,当我从实体经理获得评论时,参与者列表中存在相同参与者的重复副本(即相同的ID).我还发现重复数量与角色数量直接相关(即如果参与者有3个角色,那么参与者在评论的参与者列表中出现3次)
我之前使用过直接的Hibernate,但这是我第一次使用JPA,所以我确定我配置错了.我只是不知道它是什么.
这是代码:
评论:
@Entity
public class Review extends BaseModel{
@ManyToOne(cascade=CascadeType.ALL, fetch=FetchType.EAGER, optional=false)
private Item item;
@Column(name="ISNEW", nullable=false)
private boolean isNew;
@Enumerated(EnumType.STRING)
@Column(name="STATUS", nullable=false)
private ReviewStatus status;
@Enumerated(EnumType.STRING)
@Column(name="PHASE", nullable=false)
private Phase phase;
@Enumerated(EnumType.STRING)
@Column(name="REVIEW_TYPE", nullable=false)
private ReviewType reviewType;
@OneToMany( cascade=CascadeType.ALL, fetch=FetchType.EAGER)
private List<Participant> participants;
@OneToMany(cascade=CascadeType.ALL)
private List<Defect> defects;
@Column(name="START_DATE", nullable=false)
private Date startDate;
@Column(name="MEETING_DATE", nullable=false)
private Date meetingDate;
@Column(name="FINISH_DATE")
private Date finishDate;
@Column(name="DURATION", nullable=false)
private Double duration;
public Item getItem()
{
return item;
}
public void …Run Code Online (Sandbox Code Playgroud) select_related如何使用具有多个外键的模型?它只是选择第一个吗?
class Model:fkey1,fkey2,fkey3 ......
文档没有说明这一点,至少没有说明方法的位置.
我正在使用EF Core 2设置一个新项目,我需要在IdentityUser上有一个导航属性,所以当我查询用户时,我可以包含(x => x.Roles)并获取用户所在的角色.
这篇关于Github的帖子有一些想法,但是我通过在Identity表上创建新的/重复的字段或导致迁移问题,尝试了每个问题和所有问题.EF团队的任何人都没有官方评论.
https://github.com/aspnet/Identity/issues/1361
我想知道是否有人这样正常工作?并且可以共享他们的EF DB映射和模型.
我的问题是我不明白我怎么知道我必须使用Native查询而不是hibernate查询语言?
hibernate ×3
java ×2
asp.net ×1
asp.net-core ×1
asp.net-mvc ×1
c# ×1
datanucleus ×1
django ×1
eclipselink ×1
jpa ×1
jpa-2.0 ×1
lazy-loading ×1
nhibernate ×1
openjpa ×1
queryover ×1
rest ×1
select ×1
spring ×1
spring-batch ×1
sql ×1
wcf-web-api ×1