我有一个MVC3和EF 4 Code First应用程序,通过将DB初始化程序设置为DropCreateDatabaseIfModelChanges<TocratesDb> (其中TocratesDb是我的派生DbContext ,将其configuration为在模型更改时更改数据库。 我现在通过向类添加属性来对模型进行更改,但是当EF尝试删除并重新创build数据库时,出现以下错误: Cannot drop database "Tocrates" because it is currently in use. 我在这个数据库上的任何地方都没有其他连接。 我假设我的cDbContext仍然有一个开放的连接到数据库,但我能做些什么呢? 新:现在我的问题是如何基于模型重新创build数据库。 通过使用更一般的IDatabaseInitializer,我失去了这一点,必须自己实现它。
entity framework代码首先将根据模型在数据库中自动创build一个表。 有没有一个属性可以避免这种情况?
我有一个局部视图,试图从数据库检索一个IEnumerable<Post>使用asynchronous… 方法 public static class PostService { public static int PostsPerPage = 50; public static async Task<IEnumerable<Post>> GetRecentAsync(int page = 0) { return await entityFrameworkDbContext.Posts .ToListAsync(); } } PartialView public async Task<ActionResult> Recent(int page = 0) { return PartialView(await PostService.GetRecentAsync(page)); } 然后,如果我试图打电话给它 @Html.Action("Recent", "Post") 我得到以下exception HttpServerUtility.Execute在等待asynchronous操作完成时被阻塞。 说明:执行当前Web请求期间发生未处理的exception。 请查看堆栈跟踪,了解有关错误的更多信息以及源代码的位置。 exception详细信息:System.InvalidOperationException:HttpServerUtility.Execute在等待asynchronous操作完成时被阻塞。 为什么我得到这个错误? 它不应该工作吗?
Entity Framework是否支持MongoDb数据库?也许有人会写一个EF MongoDb Provider?
在VS2008中,.edmx和.dbml文件有什么区别?在VS2008中哪个数据源是edmx或dbml的最佳select?在VS2008中使用edmx文件会出现什么问题?我可以在VS-2008中使用edmx吗?
请任何人可以帮助我解决这个错误? 指定的模式无效。 错误: CLRtypes到EDMtypes的映射是不明确的,因为多个CLRtypes与EDMtypes“City_DAL”相匹配。 以前发现CLRtypes“CeossDAL.City_DAL”,新发现CLRtypes“CeossBLL.City_DAL”。 我有DAL和这个主要问题包含EF和BLL,这包含相同的DAL类,但在命名空间不同,这是什么原因造成的问题 我不知道如何摆脱这些问题,你能帮我吗? 另外,如果有人给我示例使用EF的n层架构,我将不胜感激 谢谢
要获得包含整数的列的最大值,我可以使用以下T-SQL命令 SELECT MAX(expression ) FROM tables WHERE predicates; 是否有可能获得与entity framework相同的结果。 假设我有以下模型 public class Person { public int PersonID { get; set; } public int Name { get; set; } public int Age { get; set; } } 我如何得到最古老的人的年龄? int maxAge = context.Persons.?
在我的EF后来,我试图传递一个匿名函数作为我的Linq查询的一部分。 该函数将传入一个INT并返回一个BOOL(u.RelationTypeId是一个INT)。 以下是我的function的简化版本: public IEnumerable<UserBandRelation> GetBandRelationsByUser(Func<int, bool> relation) { using (var ctx = new OpenGroovesEntities()) { Expression<Func<UsersBand, bool>> predicate = (u) => relation(u.RelationTypeId); var relations = ctx.UsersBands.Where(predicate); // mapping, other stuff, back to business layer return relations.ToList(); } } 但是,我得到上述错误。 看起来我正在通过构build函数的谓词来正确地处理所有事情。 有任何想法吗? 谢谢。
我在MVC5中创build了一个类,我想要内容的主要所有者,然后我想要一些内容的编辑器: public class Content { public int ID { get; set; } public IdentityUser Owner { get; set; } public ICollection<IdentityUser> Editors { get; set; } public string Title{ get; set; } public string Body { get; set; } } 在数据库上下文中,我有以下代码: protected override void OnModelCreating(DbModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); modelBuilder.Entity<Content>() .HasOptional(c => c.Editors) .WithRequired() .WillCascadeOnDelete(); modelBuilder.Entity<Content>() […]
我正在尝试在ASP.NET MVC 4中制作webapi。webapi使用了Entity Framework 5 Spatialtypes,我写了一个非常简单的代码。 public List<Area> GetAllAreas() { List<Area> aList = db.Areas.ToList(); return aList; } 区域包含DbGeometry。 当我运行这个本地的工作,但是当我发布到azure,它给了我这个错误: 空间types和函数不适用于此提供程序,因为找不到程序集“Microsoft.SqlServer.Types”版本10或更高版本。 任何人都知道如何解决此问题? 🙂 谢谢!