当我使用双向导航时,我似乎无法让EF6生成一个FK。
下面是我的类(为了简洁起见删除了一些属性):
public class BaseSystem
{
public int Id { get; set; }
public SystemConfiguration Configuration { get; set; }
}
public class SystemConfiguration
{
public int Id { get; set; }
public BaseSystem System { get; set; }
}
我希望SystemConfigura
我刚开始讲EF4.1代码,我非常喜欢它。
下面是一个故事:一个Codif类由来自Domaine类、一个Entite类和Reference类的一个键和第四个字段组成,第四个字段是一些文本。参考文献和成文法有一对一的关系。
问题是,当它创建数据库时,它在我的引用实体中创建了一些丑陋的字段,创建了Codif实体的重复字段。优点:然而,当我操作我的引用对象时,我有访问Codif属性的预期行为,并且重复字段是不可见的。
下面是代码:
public class Reference
{
public int ReferenceId { get; set; }
public string Li
我有以下两个实体引用一个表,使用EF Core的拆分表选项--这个非常简化的版本:
class Account
int Id
Settings Settings
class Settings
int AccountId (maps to Id)
string PropertyX
来自
如果依赖实体使用的所有列在数据库中为NULL,则查询时不会为其创建任何实例。这允许建模一个可选的依赖实体,其中主体上的relationship属性将为null。请注意,如果所有依赖项的属性都是可选的,并且设置为null,则也会发生这种情况,这可能不是预期的。
有可
我对EF核心有一些问题。
我得到了一个错误:
InvalidOperationException:无法保存更改,因为要保存的数据中检测到循环依赖项
这是我的模型:
public class Transaction
{
public int TransactionId { get; set; }
public int? MutualTransactionId { get; set; }
public virtual Transaction MutualTransaction { get; set; }
public long Debit { get; se
我有一个非常简单的模型,两个实体通过引用导航属性一对一地联系在一起: class Post //"Main"
{
public int RowId { get; set; }
public string SomeInfo { get; set; }
public FTSPost FTSPost { get; set; }
}
class FTSPost //"Child"
{
public int RowId { get; set; }
public Post Post { get; set; }
public
我有下面的代码。我只查询数据,不删除或删除实体,但EF将记录跟踪为已删除。我不明白为什么。
List<SubscriptionModuleDto> subscriptionModuleDtos = new List<SubscriptionModuleDto>();
/// Here I get just 1 model
List<SoftwareModule> calcModuleModels =
await _managementContext.SoftwareModul
高级问题:我希望在与我有一对多关系的表上进行快速查找。
我有一个很大的类似日志的表,其中有一个指向employee表的外键。我想要一个从employee表到最近的日志条目(针对该员工)的关系,以及许多日志条目的常规集合。我只能使用一对多,并且只能查询日志文件上的最后一个时间戳和员工Id,但我更喜欢直接指针。
有没有可能用注解做这样的事情?
public class TagEntry
{
public int TagEntryId { get; set; }
public int TagId { get; set; }
public DateTime LogTime {
我有一个用EF作为ORM编写的.NET应用程序。
我不知道Author和Address之间的关系。
有可能有与许多作者相关的地址吗?是多到多/一对一/一对多的关系吗?
如果每个作者都有一个地址,那么在一个拥有数百名作者的应用程序中,会有许多地址实体重复,对吗?
public class Author
{
[Key]
public int AuthorID { get; set; }
public string? Name { get; set; }
public List<Book>? Books { get; set; }
public A
有没有办法在数据库中创建0 or 1到0 or 1的关系?
例如,假设我有一个经理表和一个艺术家表。一个经理只能管理一个艺术家,一个艺术家只能有一个经理。然而,经理可以没有艺术家(即寻找艺术家来管理),而艺术家可能没有经理。
有没有办法做到这一点?在这两个表中创建一个外键只会创建一个1 to many关系。
我想在EF中创建一对一的关系,其中Foreign可以是null (因此,它可以被称为0..1到-0..1)
public class ProductInstance
{
public int Id { get; set; }
public int SaleId { get; set; }
public Sale Sale { get; set; }
}
public class Sale
{
public int Id { get; set; }
public ProductInstance ProductInstance { get; set;
我使用的是EF5.0 CF,让我们考虑一下这些实体(在这里简化):
public class Catalog
{
public int Id { get; set; }
public bool IsActive { get; set; }
public string Name { get; set; }
public ICollection<PricedProduct> Products { get; set; }
}
public class PricedProduct
{
public int Id { get; set;
我正在尝试创建一个Profile表来集成Asp.Net标识表:AspNetUsers。我使用的代码第一移动与EF 6.0。
这是我的用户类:
public class ApplicationUser : IdentityUser
{
public ApplicationUser()
{
}
public virtual string FirstName { get; set; }
public virtual string LastName { get; set; }
public U
我检查了一下,发现EF取代了LINQ to SQL。我熟悉第一本书中的LINQ to SQL,但我对EF一无所知。无论如何,在阅读代码时,似乎除了名称之外什么都没有改变。相同的旧存储库类,相同的旧函数。
我做了一点调查。我知道LINQ并不局限于SQL。另外,EF并不局限于Microsoft系列SQL服务器。的人对EF不满意,说它太复杂了。但是现在我在EF名字下读到了同样的代码。只有使用LINQ to SQL的ADO.NET实体模型实例生成的类。既然EF现在已经是事实上的标准ORM了,那么有没有人能澄清一下EF特性的问题呢?
Linq to Sql与实体框架(如Linq to SQL是一对一映射,EF是多对多映射等)有许多不同之处,这些都可以在找到
但是在这里,我问EF和Linq to Sql,我们是先创建实体,然后生成表,还是以另一种方式,以及这两种方法的优缺点。在EF中,可能存在从多个表继承而来的业务实体,并且不代表数据库中的任何内容。Linq to Entities是否不同于EF?
如果问题不清楚或问错了,请告诉我。提前谢谢各位。
我在EF中定义了两个表RelImpOrdi和Imprimantes,如下所示: public class RelImpOrdi
{
[Key]
public int IdImprimante { get; set; }
[Required]
[MaxLength(50)]
public string NomOrdinateur { get; set; }
[Required]
public int ImpDefault { get; set; }
}
public class Imprimantes
{
[Key]
有以下两个实体:
public class Employee
{
public int Id { get; set; }
public string Name { get; set; }
public CompanyVehicle CompanyVehicle { get; set; }
}
和
public class CompanyVehicle
{
public int Id { get; set; }
public string Name { get; set; }
public Employee Employee { get; set;
我只是EF代码第一模型的初学者。给定映射到当前遗留MS SQL数据库的两个POCO类。它们与建立一对多关系的复合外键相关联。因为它实际上是一对一的关系,所以我希望在我的POCO对象中有相应的导航属性,并在fluent API中进行映射。下面是我的例子:
public partial class Answer
{
//primary key
public int id { get; set; }
//foreign keys
public int question { get; set; }
public int assignedForm { get;
我一直在阅读谷歌之类的页面,内容是有人在EF上建立了一对一的关系,但这对我来说就是行不通。
这是我的模型:
帐户:
public int Id {get; set;}
public virtual AccountConfig AccountConfig {get; set;}
帐户映射:
HasKey(t => t.Id);
HasRequired(t => t.AccountConfig)
.WithOptional();
账号配置:
public int Id {get; set;}
public int AccountId {get; set;}
public vir
在尝试创建或更新我的条目时,我似乎收到重复条目或完整性错误。我尝试过使用objects.get_or_create()和objects.update_or_create()。当还没有记录时,创建似乎工作得很好,但不知何故,更新只是抛出了一些重复的条目错误。
这是我的views.py:
def evaluate(request):
r = []
i = []
a = []
s = []
e = []
c = []
for id in range(1,43):
score = float(request.POST.get(f
我试图通过删除导航属性来更改EF Core中的模型,但当我这样做时,项目将不会为我构建添加迁移。我理解为什么,但由于我不是Fluent API专家,我不确定删除该属性的最佳方法。
我尝试删除的属性是Images属性(我想将其更改为一对一关系,而不是一对多关系)。
public partial class DiaryEntries
{
public long Id { get; set; }
public DateTime Date { get; set; }
public string Content { get; set; }
public long Diar
在实体框架中定义外键关系时遇到问题。为了演示这个问题,我已经将代码简化到最低限度。
该模型定义为;
public class AccessControlList
{
[Key] public int Id { get; set; }
public string Name { get; set; }
}
public class ManagedFile
{
[Key] public int Id { get; set; }
public string Name { get; set; }
public virtual AccessControlL
对于这个示例,我简化了以下db表:
网页 Id,URLIdentifier
WebpageMetaData Webpage_id关键词
Webpage_id是表的主键,也是返回到网页表的主键。
然后,我将使用Fluent NHibernate及其自动化功能将它们映射到以下POCO类:
public class Webpage
{
public virtual int Id { get; set; }
public virtual string UrlIdentifier { get; set; }
public virtual WebpageMetaData Webpa
假设我有一个表,如下所示:
Employee
employee Id -- Primary Key
manager Id -- Foreign Key Relationship with employee id as manager is also an employee
subordinates -- List<Employee Ids> another foreign key relationship to the same table.
我使用的是Spring,所以一个简约的类应该是如下所示的:
@Data
@Entity(name = "employee"