我对核心数据很陌生。
目前,我手边有以下表格:
tbl_teahcer tbl_student tbl_course tbl_student_course_map
----------- ----------- ---------- ----------------------
teacher_id student_id course_id student_id
name name name course_id
t
我试图理解领域驱动的设计。下面的示例程序使用NHibernate。它有一个Entity基类,如下所示:
public abstract class Entity
{
public virtual long Id { get; protected set; }
public override bool Equals(object obj)
{
var other = obj as Entity;
if (ReferenceEquals(other, null))
return false;
if
EF 4.2 Code First支持枚举类型吗?如果是这样,你如何使用它?在使用Nuget EntityFramework包时,以下代码不会为枚举属性创建字段。
public class FooContext : DbContext
{
public IDbSet<Foo> Foos { get; set; }
}
public class Foo
{
public int Id { get; set; }
public string Name { get; set; }
public Category Category { get; set; }
关于如何获取当前登录用户的ID,对于不同的RC's ASP.NET Core,这里有很多不同的答案。我想在这里问一个明确的问题。请注意,"Microsoft.AspNetCore.Identity.EntityFrameworkCore":现在有project.json "1.0.0“
使用RC1,您可以这样做:
using Microsoft.AspNet.Identity;
using System.Security.Claims;
User.GetUserId();
但是对于新发布的EF版本1,Microsoft.AspNet.Identity并不是正确
我目前正致力于向.net核心EF迁移,以对抗SQL Server CE v4.0,现在正在研究其替代方案。
然而,我没有找到任何一个,从这里,唯一指定的第三方提供商仍然不支持.net核心。
Entity Framework Core是否或即将(很快)支持SQL Server CE v4.0提供程序?
谢谢你,伊莲
以下是多到多关系的EF代码第一类的部分
public class Foo(){
....
public ICollection<Doo> doo { set; get; }
}
public class Doo(){
....
public ICollection<Foo> foo { set; get; }
}
EF在数据库、Foo、Doo和联接表FooDoo中创建3个表。
这是我的代码:
var _foo = context.Foo.FirstOrDefault(o=>o.id == fooID);
var _doo = co
我正在尝试使用EF Core,但我需要在我的一个表上使用sql server数据类型hierarchyid。
是否可以将我的c#类中的字段指定为hierarchyid类型?
我可以在不破坏EF的情况下手动将EF创建为hierarchyid类型吗?
编辑:我尝试过这样做:
public class Entity
{
public int Id { get; set; }
public string Name { get; set; }
public SqlHierarchyId HierarchyId { get; set; }
}
虽然有人建议EF core 2.1支持
我使用的是EF Core 5和SQL Server,我有以下简单的实体:
public class Person
{
public Guid Id { get; set; }
public string Name { get; set; }
}
它在DbContext中添加为:
public DbSet<Person> People { get; set; }
我运行add-migration Person get,下面是生成的迁移代码:
public partial class Person : Migration
{
protected override
我一直在使用基于.Net Core3.1和PostgreSQL 12的EF。主要的问题是我不能使用EF添加一行。它总是希望获得一个主键。我有一个baseClass,其中有一个属性-- "Id“,它有一个键属性。默认情况下,所有其他实体都继承自baseClass以获取Id属性。此外,我还创建了通用存储库,以便在一个地方使用任何存储库。它内部有以下方法,如创建、更新、删除和GetAll。现在,我可以从数据库中获取任何数据,但不能将任何行插入到any表中,因为EF希望获取主键。下面你可以看到异常。
Unable to track an instance of type 'Projec
我目前正在努力将我们的公司框架从EF6转换成与EF6兼容的框架。我碰到了一个小街区。在EF6上工作良好的EF“存储过程”现在在EF中的这段代码上失败了:
var allFolderAncestors = (from f in context.MENU_MenuFolders
from mtf in context.MENU_MenuToolbar_MenuFolders
.Where(x => x.MenuFolderId == f.Id
我正在学习如何使用EF构建一个API。我正在构建一个Paycheck API,并且我为Paycheck类型创建了一个实体类,如下所示:
[Table("PaycheckType")]
public class PaycheckTypeEntity
{
[Required]
[Key]
[Column("Id", Order = 0)]
public int Id { get; set; }
[Required]
[MaxLength(500)]
[Column("Type", Order
我在ef 5应用程序中使用ef pattren。create()方法存在于IDbSet中,在ef7的DbSet中不存在该方法。
Create()方法在EF5中的描述如下:
为该集合的类型创建实体的新实例。请注意,此实例未添加或附加到集合。如果将底层上下文配置为创建代理,并且实体类型满足创建代理的要求,则返回的实例将是一个代理。
代码示例:
public interface IRepository<T> where T : IDisposable {
T Create();
}
public class Repository<T> : IReposito
假设模型如下:
class Foo {
virtual Bar Bar {get; set ;}
}
class Bar {
int Id { get; set; }
string Property {get; set;}
}
class MyContext {
virtual DbSet<Foo> Foos {get; set;}
void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Bar>()
我们试图使用Fluent API在Server上生成一个具有EF Core 3.1的非空行版本列:
public class Person
{
public int Id { get; set; }
public byte[] Timestamp { get; set; }
}
public class PersonEntityConfiguration : IEntityTypeConfiguration<Person>
{
public void Configure(EntityTypeBuilder<Person> builder)
我有一个asp.net核心2.2。项目与EF核心。我正面临着这个问题。请看下面有两个外键的表:
当我运行脚手架时,上面的表RubrosContablesCtasBanc、EF创建了类和Fluent DbContext,如下所示:
public partial class RubrosContablesCtasBanc
{
public int Id { get; set; }
public int IdCuentaBancaria { get; set; }
public int IdRubroContable { get; set; }
publi
如果我有一个名为Book的实体,它具有Id、标题和价格,那么我如何在不首先从数据库中检索它的情况下更新该记录的Price?我只知道更新时的标题。
在这个虚构的例子中,标题保证是唯一的。
通常,我可以使用Attach(),但这需要我知道Id,而我没有这个Id。
基本上,我希望这份声明能从EF中得出:
update Book set Price = "1.99" where Title = "Blah";
谢谢
问题如下:
我使用dotnet ef migrations add InitialStructure创建我的初始数据库结构。
我使用dotnet ef database update创建数据库。数据库已正确创建。
我在我的实体中添加了一个列。
我负责dotnet ef migrations add NewColumnMigration。迁移已经生成,但是当我检查NewColumnMigration.cs文件时,我可以看到Up()方法尝试从头创建所有表,而不是用新列修改一个表。
因此,运行dotnet ef database update失败,因为大多数表已经创建。