小编use*_*344的帖子

ASP.NET MVC - DbContext的良好实践

我正在使用Entity Framework启动一个新的.NET MVC项目,我正在努力解决一些问题.

  1. 在我的模型中,我有大约150个实体(从数据库生成).只有一个DbContext是个好主意吗?如果没有,我应该如何划分我的实体?

  2. 如果我有一个DbContext并且我创建了一个实例化数据库上下文对象的类变量(在Controller中),那么这个DbContext会发生什么?它是否在内存中为每个实体创建了单独的空间?在我的情况下,当我有150个实体时,它不会非常有效.我错了吗?

  3. 我将在许多控制器中使用我的DbContext.创建一个MainController(我创建新的DbContext)是一个好主意,它将由其他控制器继承吗?因为这允许其他人访问相同的Context.

  4. 处理我的DbContext的最佳做法是什么?我已经读过使用依赖注入是一种好习惯.但是通过这种方式,我将不得不为每个控制器注入上下文.哪种依赖注入方式最流行并且现在使用?

真的需要你的建议.它将使我更深入地了解这一发展.

asp.net-mvc entity-framework

4
推荐指数
2
解决办法
3124
查看次数

C#LINQ Get List子集条件困难

我有一些Product结构,在那里我有,例如,ProductIdProductVariantId.每种产品都可以有许多变体.例如,Product1可以有变量1和2. Product2可以有变量1,2和3,所以我有以下列表:

ProductId: 1, ProductVariantId 1
ProductId: 1, ProductVariantId 2
ProductId: 2, ProductVariantId 1
ProductId: 2, ProductVariantId 2
ProductId: 2, ProductVariantId 3
Run Code Online (Sandbox Code Playgroud)

我想要做的是获取productId只有一个给定的变体.当productId没有给定变体时,我的机制应该取最大值.

所以给定变体的示例3应如下所示:

ProductId: 1, ProductVariantId 2 (maximum)
ProductId: 2, ProductVariantId 3
Run Code Online (Sandbox Code Playgroud)

我试着这样做:

products.ToList().Where(x => x.ProductVariant == givenProductVariant)
Run Code Online (Sandbox Code Playgroud)

我想补充的是某种数据库distinctproductId,并获得最大.

我可以请求帮助吗?

c# linq list

0
推荐指数
1
解决办法
117
查看次数

标签 统计

asp.net-mvc ×1

c# ×1

entity-framework ×1

linq ×1

list ×1