Tag: entity framework

使用WebApi和映射模型实现OData

我正在尝试在WebApi中实现OData。 我正在使用存储库模式和EF5(在后端),这仍然与我找到的所有示例一致。 这是事情变得不稳定的地方。 我试图隐藏EF生成的类隐藏在控制器中使用AutoMapper映射的模型后面。 我看到的例子似乎都归还了回购中的任何内容 我不想在控制器中但在存储库中应用OData参数(已映射的结果)以保留延迟执行的值。 我可以将ODataCriteria传递到存储库中,但是当我尝试Appy时,我得到一个错误,因为看起来选项/结果是从表示层而不是IQueryable 键入IQueryable 。 我在另一篇文章中看到其他人没有注意到这一点,但是,它只是该post的一小部分,似乎没有帮助。 还有其他人处理过这件事吗? 我真的不想暴露EF类。 哦,我先使用DB。 提前致谢…

在Startup.cs中添加DbContextOptions而不注册数据存储

我的问题是下面的代码在启动期间没有注册数据存储。 这是我从应用程序的响应中得到的特定“错误”语句: An unhandled exception occurred while processing the request. InvalidOperationException: No data stores are configured. Configure a data store by overriding OnConfiguring in your DbContext class or in the AddDbContext method when setting up services. Microsoft.Data.Entity.Storage.DataStoreSelector.SelectDataStore(ServiceProviderSource providerSource) 在ConfigureServices(IServiceCollection服务)中,我试图在lambda中为我的DbContext指定DbContextOptions。 码: services.AddEntityFramework(Configuration) .AddSqlServer() .AddDbContext( options => options.UseSqlServer(Configuration.Get(“Data:DefaultConnection:ConnectionString”)) ); 在我的DbContext中,我有一个构造函数,它将选项发送到base,代码: public MyContext(DbContextOptions options) : base(options) { } […]

如何在entity framework代码中首先映射不同数据类型的列和实体

我正在使用Entity Framework 5 – Code。 我有一个数据库,我连接到已经存在一段时间了(我没有创建它)。 有一个名为T_Customers的表。 它包含所有客户的列表。 它具有以下结构(仅部分显示): Customer_id | numeric (5, 0) | auto increment | not null (not set as primary key) FName | varchar(50) | not null LName | varchar(50) | not null 我的Customer类: public class Customer : IEntity { public int Id { get; set; } public string FirstName { […]

.NET核心entity framework – 在类库中为Context添加迁移

我在向.NET Core类库中的Entity Framework数据库上下文添加初始迁移时遇到问题。 当我跑: dotnet ef migrations add migrationName -c PlaceholderContext 我收到错误: Could not invoke this command on the startup project ‘Placeholder.Data’. This version of the Entity Framework Core .NET Command Line Tools does not support commands on class library projects in ASP.NET Core and .NET Core applications. See http://go.microsoft.com/fwlink/?LinkId=798221 for details and workarounds. 所以我点击了链接 […]

SQLite错误:’DbProviderFactories’部分每个配置文件只能出现一次(IBM Client Access)

我正在使用我的应用程序Entity Framework和System.Data.SQLite在.NET 4.5上使用WPF和C#在我的机器上运行良好,但在测试机器上,当我通过EntityFramework访问sqlite数据库时收到此错误: “DbProviderFactories”部分每个配置文件只能出现一次。 我发现错误是在测试机器中,在machine.config中: 我删除了最后一个空元素,现在一切正常。 我想我有一些与IBM.Data.DB2.iSeries istallation(IBM Client Access)相关的东西。 我的问题是:如何在不手动编辑machine.config的情况下删除空元素? 我尝试在app.config文件中插入标记但不起作用。 我发现其他类似于我的问题,但没有人建议如何解决问题而无需手动编辑machine.config来解决问题。 这是我的app.config文件:

为什么EF代码首先生成一个无关的外键列?

我正在使用entity framework代码 – 首先自动创建我的数据库模式,我的一个实体看起来像这样: public class AssessmentsCaseStudies { #region Persisted fields [Required] [Key, Column(Order=0)] [ForeignKey(“Assessment”)] public int AssessmentId { get; set; } [Required] [Key, Column(Order=1)] [ForeignKey(“CaseStudy”)] public int CaseStudyId { get; set; } [Required] public int Score { get; set; } [ForeignKey(“Follows”)] public int? FollowsCaseStudyId { get; set; } #endregion #region Navigation properties public virtual […]

SQLite连接未出现在实体数据模型向导中

我做了什么来得到我的位置:我使用GAC和VS2012选项从http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki安装了程序集。 我现在可以连接到现有的SQLite数据库,或建立连接并创建新的SQLite数据库文件。 此连接将出现在我的服务器资源管理器中,并且工作正常。 我可以从资源管理器中查看此数据库并更改表等。 但是,当我尝试添加新的ADO.NET实体数据模型时,这个已建立的连接将不会出现在可用的数据连接中。 即使我继续进行新连接, System.Data.SQLite数据库文件选项甚至不在选项列表中。 我尝试单独或与SQLite包一起使用NuGet安装实体包。 我已经尝试过不安装它们或仅将Entity模型与前面提到的程序集一起安装,但SQLite的选项不会出现。 经过谷歌搜索和溢出这个令人沮丧的时间,并发现只有一小部分人显示出与我相同的问题,但没有解决方案对我有用,我来找你帮忙。 经过我所有的努力,我怀疑它归结为我的App.config文件。 我看起来如下: 类似的问题: 数据库首先使用system.data.sqlite 1.0.93创建entity framework6.1.1模型 http://sqlite.1065341.n5.nabble.com/Provider-not-showing-up-in-Net-Model-import-wizard-td75306.html 我使用了vs2012 .NET 4.5,SQLite版本1.0.96.0,实体6.1.3 我希望有人能够帮助我。

LINQ to Entities投影嵌套列表

假设这些对象…… class MyClass { int ID {get;set;} string Name {get;set;} List Things {get;set;} } class MyOtherClass { int ID {get;set;} string Value {get;set;} } 如何使用下面的投影执行LINQ to Entities Query,它会给我一个List? 这与IEnumerable工作正常(假设MyClass.Things是IEnumerable,但我需要使用List) MyClass myClass = (from MyClassTable mct in this.Context.MyClassTableSet select new MyClass { ID = mct.ID, Name = mct.Name, Things = (from MyOtherClass moc in mct.Stuff where […]

使用Entity Framework Fluent Api映射System.Uri

非常简单的问题。 我有一个具有System.Uri类型属性的模型。 Uri没有默认的无参数构造函数,也没有ID字段。 有没有办法覆盖我的模型生成以自定义方式将其存储在数据库中(例如,只是作为string )? 在NHibernate中,我之前通过实现IUserType实现了这IUserType ,但我在CodeFirst中找不到类似的机制。 显然,我可以创建一个自定义类型,在引擎盖下使用Uri并公开常规的可映射属性和构造函数,我只是好奇是否有任何方法来映射这个系统类型,这样我就不必像这样做一个包装器。

实体数据模型向导太慢(SQL数据库)

使用:visual studio 2012 Ultimate,ADO Entity Framework 6,数据库:Sql express 2014(安装在本地PC上),数据库表计数:174表。 我正在尝试使用实体数据模型向导创建数据库模型,但创建模型大约需要8个小时(对话框没有响应)。 我试图重新安装visual studio和Entity Framework但同样的问题。 我需要任何可以加速数据库模型创建的想法。