草庐IT

c# - 实体类型 IdentityUser 不是当前上下文模型的一部分

我看到与this相同的问题问题,但那里提出的情况似乎并不适用,所以我认为我有一个不同的问题。事实上,我在SO上看到了几个类似的问题,每个问题都有不同的原因和解决方案,所以我认为这个错误必须来自高层。也就是说……我有一个EF代码优先数据库模型,我正在尝试使用IdentityUser来扩展我的MVC5站点的标准注册。我有扩展的UserModel:namespaceMyMvcSite.Models{publicclassUserModel:IdentityUser{publicstringBillingId{get;set;}publicvirtualICollectionDatabases

c# - 在 ASP.NET MVC 应用程序中处理记录/实体级别的安全性

每个人都在做什么来处理ASP.NETMVC应用程序中单个记录的安全性(检索和修改)?这个应用程序有一个服务/业务层和一个数据访问层,它们完全独立于Web用户界面。我已经在使用成员资格和角色提供程序来处理我应用程序中特定区域/功能的身份验证和授权,但现在我需要保护个人记录。例如,假设Bob可以创建和编辑他自己的FooBar记录。我想确保其他用户无法查看或编辑Bob的记录。我想防止URL操作和/或编程错误。我们可能还希望允许Bob与其他用户共享他的FooBars,允许他们查看但不能编辑他的记录。我想到了几种方法:直接在检索和修改查询中进行数据访问层的安全检查。检查服务层的安全性,在处理业务

c# - nHibernate HQL - 实体未映射

我有我的nHibernate设置并且可以正确地使用QueryOver来处理大多数查询,但是,每当我尝试执行HQLCreateQuery时,我都会收到实体未映射的异常。我可以使用QueryOver确认同一个实体工作正常。注意:我使用的是fluentnHibernate有什么想法会导致这种情况吗? 最佳答案 如果您在映射中禁用了自动导入(),那么您将不得不在查询中的任何地方使用完全限定的类名,不合格的类名将不起作用。否则,启用自动导入。Conventions.Setup(x=>{x.Add(FluentNHibernate.Conven

c# - Entity Framework 实体不在 DataSpace.OSpace (_workspace.GetItemCollection(DataSpace.OSpace)) 但在 DataSpace.CSpace

我一直在研究XMLsEntityFramework。我试图创建一种可以在运行时注入(inject)属性的实体,首先我创建了DynamicEntity动态对象publicclassDynamicEntity:DynamicObject{DictionarydynamicMembers=newDictionary();publicoverrideboolTrySetMember(SetMemberBinderbinder,objectvalue){dynamicMembers[binder.Name]=value;returntrue;}publicoverrideboolTryGetMe

c# - EF AddOrUpdate 种子不更新子实体

我在播种数据时遇到了一些问题,我能够通过一个非常小的应用程序重现该问题。假设你有这个种子方法:protectedoverridevoidSeed(JunkContextcontext){context.Junks.AddOrUpdate(x=>x.Name,newJunk(){Name="BANANAS!!",Item=newJunkItem(){Name="APPLES!!!"}});}当您在PMC中运行update-database时,所有实体都会成功创建。很好。但是当你想去更新数据库时,说你的种子方法现在是这样的:protectedoverridevoidSeed(JunkCon

c# - 使用 Linq Select 将实体映射到 DTO 的最简洁方法?

我一直在努力想出一种干净且可重用的方法来将实体映射到它们的DTO。这是我想出的例子以及我被困的地方。实体publicclassPerson{publicintID{get;set;}publicstringName{get;set;}publicAddressAddress{get;set;}//OtherpropertiesnotincludedinDTO}publicclassAddress{publicintID{get;set;}publicstringCity{get;set;}//OtherpropertiesnotincludedinDTO}DTOpublicclassP

c# - Entity Framework ——通过名称获取实体

我有以下代码(示例):publicdynamicGetData(stringname){using(varctx=GetObjectContext()){switch(name){case"entity1":returnctx.entity1.ToList();case"entity2":returnctx.entity2.ToList();......default:returnnull;}}}我想避免在这个示例中切换。如何通过名称找到需要的实体类,调用ToList()方法并返回数据?我可以使用反射来做到这一点吗? 最佳答案 您可

c# - 对象实体到 CSV 序列化/转换

如何在C#中将所有值(属性)写入csv格式的字符串?例如:classPerson(stringfirstName,stringlastName,int_age);Personperson=newPerson("Kevin","Kline",33);现在我想要一个字符串"Kevin;Kline;33"换句话说,我想将一个对象序列化为CSV 最佳答案 看看JoshClose's优秀CSVHelper图书馆varperson=newPerson("Kevin","Kline",33);using(varcsv=newCsvWriter(n

c# - 先在代码中获取任意实体的主键值

有这样的方法吗?objectGetPrimaryKeyValue(DbEntityEntryentry);或者应该如何实现? 最佳答案 您需要将DbContext转换为IObjectContextAdapter,这样您就可以访问底层的ObjectContext,这让您可以访问一些隐藏的更高级的功能DbContext.在派生DbContext的类中,以下方法将起作用。objectGetPrimaryKeyValue(DbEntityEntryentry){varobjectStateEntry=((IObjectContextAdap

c# - 我们可以使用枚举作为类型安全的实体 ID 吗?

我们在EF6.1代码优先设置中使用一个相当大的模型,我们使用int作为实体ID。不幸的是,这并不像我们希望的那样类型安全,因为很容易混淆id,例如比较不同类型实体的id(myblog.Id==somePost.Id)或类似的。或者更糟:myBlog.Id++。因此,我想出了使用类型化ID的想法,因此您不能混淆ID。所以我们的博客实体需要一个BlogId类型。现在,显而易见的选择是使用一个包含在结构中的int,但您不能将结构用作键。而且你不能扩展int...-等等,你可以!使用枚举!所以我想到了这个:publicenumBlogId:int{}publicclassBlog{public