草庐IT

Entities

全部标签

c# - DDD : Enum like entities

我有以下数据库模型:**Persontable**ID|Name|StateId------------------------------1Joe12Peter13John2**Statetable**ID|Desc------------------------------1Working2Vacation领域模型将是(简化的):publicclassPerson{publicintId{get;}publicstringName{get;set;}publicStateState{get;set;}}publicclassState{privateintid;publicstri

c# - Linq to Entities删除

是否有使用主键使用LinqtoEntites进行删除的内置方法。目前的解决方法是创建一个名为DeleteTable的存储过程(表是表名)然后在C#LINQToEntities中我只执行context.DeleteTable(ID)这是最好的方法吗?还有哪些其他选择? 最佳答案 如果您不想去数据库检索对象的所有字段,您可以创建该类的一个新实例,将其附加到一个新的上下文,删除它,然后保存更改。这让EF生成适当的删除命令。using(varcontext=newMyContext()){varmyObject=newMyObject{ID

c# - LINQ to Entities 无法识别方法 'System.String get_Item (System.String)' ,

我该如何解决这个问题?这是我的代码:DateTimedtInicio=newDateTime();DateTimedtFim=newDateTime();Int32codStatus=0;if(!string.IsNullOrEmpty(collection["txtDtInicial"]))dtInicio=Convert.ToDateTime(collection["txtDtInicial"]);if(!string.IsNullOrEmpty(collection["txtDtFinal"]))dtFim=Convert.ToDateTime(collection["txtDt

c# - 在 Select 和 Where 调用中重用 Linq to Entities 的 Expression<Func<T, TResult>

假设我有一个实体对象定义为publicpartialclassArticle{publicId{get;set;}publicText{get;set;}publicUserId{get;set;}}根据文章的某些属性,我需要确定给定用户是否可以删除该文章。所以我添加了一个静态方法来进行检查。像这样的东西:publicpartialclassArticle{publicstaticExpression>CanBeDeletedBy(intuserId){//Addlogictobereusedherereturna=>a.UserId==userId;}}现在我可以做using(MyE

c# - CodeFirst 加载 1 个链接到 25 000 个子级的父级很慢

我对我的性能问题进行了大量搜索并尝试了各种不同的方法,但我似乎无法让它足够快地运行。这是我的最简单形式的问题:我正在使用EntityFramework5,我希望能够在用户选择父项时延迟加载父项的子实例,这样我就不必拉取整个数据库。但是,我一直在延迟加载child时遇到性能问题。我认为问题在于父级和子级之间导航属性的连接。我还认为这一定是我做错了什么,因为我相信这是一个简单的案例。所以我提出了一个程序来测试单个延迟加载以隔离问题。这是测试:我创建了一个POCO父类和一个子POCO类。Parent有n个Children,Child有1个Parent。SQLServer数据库中只有1个父项,

c# - 如果不支持包含,如何在 LINQ to Entities( Entity Framework )中执行 SQL 样式 'IN' 语句?

我正在使用LINQtoEntities(不是LINQtoSQL),但在创建“IN”样式查询时遇到了问题。这是我目前的查询:varitems=db.InventoryItem.Include("Kind").Include("PropertyValues").Include("PropertyValues.KindProperty").Where(itm=>valueIds.Contains(itm.ID)).ToList();然而,当我这样做时,会抛出以下异常:LINQtoEntitiesdoesnotrecognizethemethod'BooleanContains(Int64)'

c# - Linq to Entities Distinct 从句

我想在下面的代码中添加一个distinct。我无法弄清楚确切的语法。提前致谢。vartestdates=(fromoindb.FMCSA_ME_TEST_DATAorderbyo.DATEselectnew{RequestDate=o.DATE}); 最佳答案 使用Distinct()扩展方法。请注意,Distinct()可能会否定现有的orderby(我在LINQtoSQL中注意到了这一点),因此您可能希望使用OrderBy()之后的方法。vartestdates=(fromoindb.FMCSA_ME_TEST_DATAsele

c# - LINQ To Entities 包含不区分大小写的搜索

我正尝试在linqtoentities中像这样查询我的结果集;varcategoriesList=_catRepo.GetAllCategories();filteredCategories=categoriesList.Where(c=>c.CategoryName.Contains("for"));但是,我没有得到任何结果,因为数据库中的CategoryName是For(UpperCase)。我还检查了sqlserver排序规则,它设置为_CI_AS。我不知道如何使用包含来过滤不区分大小写的字符串?我基本上想要有人喜欢;filteredCategories=categoriesLi

c# - 在 LINQ to Entities 中删除记录的正确方法

我只是遇到一个非常简单的情况,我只需要使用Linq2Entities删除记录。我试着做了一些研究,但仍然无法找到正确的方法。这是我的简单代码:[DataObjectMethod(DataObjectMethodType.Delete)]publicvoidDeleteEmployee(Employeez){using(varctx=newMyEntity()){varx=(fromyinctx.Employeeswherey.EmployeeId==z.EmployeeIdselecty).FirstOrDefault();ctx.DeleteObject(x);ctx.SaveCha

c# - Entity Framework ——查询多对多关系表

我有一个像这样定义的多对多关系:Employees--------------EmployeeID(PK)Roles--------------RoleID(PK)EmployeeRoles--------------EmployeeID(PK,FK)RoleID(PK,FK)我正在尝试获取员工列表,给定列表或RoleID:privateMyDBEntities_entities;publicSqlEmployeesRepository(MyDBEntitiesentities){_entities=entities;}publicIQueryableGetEmployeesForRo