嵌套查询 MVC LINQ

2023-12-14

我是新来的MVC and LINQ。目前,我在该项目上遇到了困难,并决定发布。

My MVC-View我想要实现的目标

Cut
----------------------------------
1   20%     
2   40%     
Color
----------------------------------
3   30%    
4   50%     
Perm
----------------------------------
5   10%     

这是我的数据表的一些示例

ID  Offer   Service
-------------------
1   20%     Cut
2   40%     Cut
3   30%     Color
4   50%     Color
5   10%     Perm

我的控制器:

var services = (from ps in db.PS
                select ps).Distinct().ToArray();
ViewBag.services = services;

My View:

@foreach (var item in ViewBag.services){
    <h3 class="page-header">
        @item
    </h3>

    //Table TAG INSERT Here: ID, Offer, Service
}

现在问题来了,我不知道如何根据自己的情况将数据库中的数据填充到视图中服务(例如:剪发、染发、烫发) in View

我正在考虑这样做是为了根据控制器中的服务存储数据:

foreach (var i in services){
    var servicesdata = (from ps in db.PS
                        where ps.Service == i
                        select ps).ToArray();
}

我想知道我可以将已经根据服务的服务数据推送到某种数组中,以便我可以填充到视图中吗?


您可以使用.GroupBy()对数据进行分组的子句Service。首先创建视图模型来表示要在视图中显示的内容

public class OfferVM
{
    public int ID { get; set; }
    [DisplayFormat(DataFormatString = "{0:P0}")]
    public float Offer { get; set; } // assumes you store this as float in the db
}
public class ServiceVM
{
    public string Name { get; set; }
    public IEnumerable<OfferVM> Offers { get; set; }
}

然后在控制器中

IEnumerable<ServiceVM> model = db.PS.GroupBy(x => x.Service).Select(x => new ServiceVM()
{
    Name = x.Key,
    Offers = x.Select(y => new OfferVM()
    {
        ID = y.ID,
        Offer = y.Offer
    })
});
return View(model);

并且在视图中

@model IEnumerable<ServiceVM>
@foreach (var service in Model)
{
    <h2>@service.Name</h2>
    foreach (var item in service.Offers)
    {
        <span>@item.ID</span>
        <span>@Html.DisplayFor(m => item.Offer)</span>
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

嵌套查询 MVC LINQ 的相关文章

  • 如何使用 LINQ ForEach 更改 List

    我有一个List
  • MVC。网络错误:初始化字符串的格式不符合从索引 0 开始的规范

    我的连接字符串是
  • 求 a 范围内的 pow(a^b)modN

    对于给定的b and N以及一系列a say 0 n 我需要找到ans 0 n 1 where ans i 没有a s为此pow a b modN i 我在这里搜索的是可能的重复pow a b modN对于一系列a 以减少计算时间 例子 i
  • 如何从 std::vector 中删除元素而不调整其大小

    迭代器擦除 迭代器位置 迭代器擦除 首先是迭代器 迭代器最后 擦除元素 从向量中删除 容器可以是单个元素 位置 或一系列元素 第一个 最后一个 这有效地减少了向量 大小除以元素数量 删除 调用每个元素的 之前的析构函数 and remove
  • 指向指针的指针和指向二维数组的指针之间的区别

    如果我有一个二维数组 B 定义为 int B 2 3 1 3 5 2 4 6 Is int p B与 一样int p 3 B int f B printf d f 1 gives 5作为输出 同时printf d f 给出 1 作为答案 为
  • 将标准库添加到C++ eclipse项目中

    一个 非常 新手 C 问题 有没有办法自动将标准库添加到 C eclipse 项目中 我安装了 CDT 主要功能插件 您可以手动添加 STL 标头的路径路径和符号 gt 包含选项卡 http help eclipse org galileo
  • 命令中带空格的 Windows C 系统调用

    我无法使用名称和参数中的空格进行系统调用 例如 system c program files something example exe c my files example txt 我尝试过各种我知道的方法来逃避 但没有任何效果 我努力了
  • 使用私有构造函数的 C# 单元测试类?

    好吧 我刚刚收到一个作业 我必须对具有私有构造函数的类执行单元测试 现在 当所有方法也都是非静态时 我该如何在不初始化类的情况下进行单元测试 有什么方法可以对具有私有构造函数的类进行单元测试 无需反射 如果您无法将类公开 您仍然可以通过以下
  • Linux C++ 调试器

    我正在寻找完美的 Linux C 调试器 我不期望成功 但搜索应该提供丰富的信息 我是一个非常有能力的 gdb 用户 但 STL 和 Boost 很容易压垮我的调试技能 并不是说我无法深入了解数据结构的内部结构 而是它需要很长时间 我通常会
  • 解析通过asp:FileUpload上传的XML文件

    我有一个场景 用户将上传 XML 文件 我想将该文件添加到数据库中的表中 不过 困难的部分是我需要解析文件 然后将一些信息添加到一些不同的表中 显示如何获取 XML 文件的每个示例都使用 URI 来获取文件 但是如何直接从数据库获取文件 或
  • UWP - 绑定枚举差异

    我遇到了一个非常有趣的问题 假设 UWP 应用中有以下 XAML 页面内容
  • Excel 2007 中的数值 - 底层 xml 文件中的表示与存储

    这个问题与 NET和OpenXml有关 我已经阅读了以下文章 它有很好的解释 但没有回答我的问题 Excel 2007 中数值的可视化与底层 xml 文件不一致 https stackoverflow com questions 58594
  • OpenMP 循环数组访问中的错误共享

    我想利用 OpenMP 来并行执行我的任务 我需要将数组的所有元素减去相同的数量并将结果写入另一个向量中 两个数组都是动态分配的malloc第一个填充了文件中的值 每个元素都有类型uint64 t pragma omp parallel f
  • WPF MVVM后台打印数据绑定问题

    我正在使用 wpf mvvm 开发一个销售点应用程序 在交易生命周期的许多阶段 都会在后台打印收据 我已经使用其他示例在后台生成和打印收据 我正在后台打印一个 UserControl 一切看起来都很棒 然后 我为该控件创建了 ViewMod
  • 将 R 值传递给采用 L 值的函数时出现过载歧义

    我有 2 个重载函数 一个采用 L 值 另一个采用 R 值 目的是让该函数可以像这样调用 Obj obj foo obj OR foo Obj 所以 我写了2个重载函数 template
  • 预览MouseMove 与 MouseMove

    我有相当多的 XAML 经验 但最近我注意到我的大多数同事都使用预览鼠标移动代替鼠标移动事件 我一直用鼠标移动它对我很有帮助 但我忍不住问我什么时候应该使用预览鼠标移动什么时候鼠标移动 有什么区别 各自有什么优点和缺点等等 PreviewM
  • 如何从与 C# lambda 集成(而非代理集成)的 Amazon API 网关获取正确的 http 状态代码?

    我正在使用 C lambda 与 API 网关集成 我希望 API 网关返回正确的错误代码 例如 400 404 500 等 API网关模块tf文件 provider aws version lt 2 70 0 region var aws
  • Unity 错误“内部构建系统错误。后端退出,代码为 -1073740791。”摧毁/杀死了我的项目

    好吧 我可能在这里夸大了 但这是真的 当我开始打开它时 该项目由于错误 内部构建系统错误 后端退出 代码为 1073740791 而被破坏 应用程序 这个项目已经在Google Play上发布了 也许和设置有关 有人可以帮忙吗 完整错误 I
  • 有关 Endian 性和 .Net 的详细信息?

    我有几个关于字节顺序的问题 这些问题足够相关 我保证将它们作为一个问题提出 1 字节顺序是由 Net还是由硬件决定的 2 如果是由硬件决定的 我怎样才能在C 中找出硬件的字节序 3 字节序是否影响二进制交互 例如 OR AND OR 或移位
  • Json.net 将数字属性序列化为字符串

    我正在使用 JsonConvert SerializeObject 序列化模型对象 服务器期望所有字段都是字符串 我的模型对象具有数字属性和字符串属性 我无法向模型对象添加属性 有没有办法将所有属性值序列化为字符串 我必须只支持序列化 而不

随机推荐

  • 拦截 Spring MVC 3 中的视图/响应

    我是 Spring MVC 3 的新手 我了解基本概念 我能够做简单的事情 例如创建控制器 服务和视图 然而 我还没有涉足更高级的领域 因此 如果这个问题看起来很愚蠢 或不可能 我深表歉意 我想知道是否有一种方法可以拦截视图和 或响应并在将
  • 替换 fflush(stdin)

    我有下面的代码 fflush stdin print Enter y n scanf c a 在这里 它在提供输入之前退出 看起来问题是因为它没有刷新可能包含一些垃圾字符的输入缓冲区 是否有刷新 stdin 的替代方案 此代码片段在 Sol
  • Boto3获取EC2实例的卷

    我正在尝试使用 boto 3 获取 aws 实例的卷 ID 列表 我正在获取某种集合管理器 但我不知道如何获取内部数据 import boto3 ec2 boto3 resource ec2 region name us west 2 in
  • 如何通过迭代地从字符串中删除所有出现的某些指定单词来最小化字符串的长度

    这个问题出现在一次编程竞赛中 但我们仍然不知道如何解决 问题 给定一个字符串 S 和一个字符串列表 L 我们希望不断删除 L 中可能出现的所有子字符串 并且我们必须最小化最终形成的字符串的长度 另请注意 删除字符串可能会引发更多删除 例如
  • WebDriverException:使用 ChromeDriver Chrome 和 Selenium 与 iframe 内的元素交互时目标框架分离

    我使用 Chromedriver 78 0 3904 70 WebDriverException target frame detached exception 已经发生过 但在以前版本的 chromedriver 中一切正常 现在在我的
  • HTTP 服务器检测到来自 HTTP 客户端的网络连接中断

    我有一个 Web 应用程序 在向服务器发出 HTTP 请求后 客户端在客户端完全接收到响应之前退出 或网络连接中断 在这种情况下 应用程序的服务器端需要执行一些清理工作 HTTP 协议中是否有内置方法来检测这种情况 服务器如何知道客户端是否
  • SpriteKit:检测完整的节点重叠

    我有两个 SKShapeNode 一个具有基于边缘的 SKPhysicsBody 一个基于体积 我想检测它们的相交而不发生碰撞 我的工作正常 当一个方法越过另一个方法时 SKPhysicsContactDelegate 接触方法就会被调用
  • Android 可点击 TextView,带有提示和图像,用于启动搜索对话框并显示所选结果

    我正在寻找一个示例 该示例展示了如何实现可单击的文本视图 该文本视图启动 Android 默认搜索对话框并显示选定的结果行 它应该与 Android 上的 Google 地图操作栏中的搜索字段具有相同的行为和设计 例如 左侧的放大镜图标 如
  • Java Arraylist 数据提取

    您将如何提取数据 如下所示 我想从这个数组列表中提取 itemname Original number 12 itemname BBQ number 23 itemname CatchUp number 23 这个数组 Original 1
  • 使用 AppleScript 将邮件消息设置为纯文本

    我有一个 AppleScript 可以很好地整理信息并创建带有附件的电子邮件 我找不到脚本将消息格式设置为接收收件箱所需的 纯文本 而不是默认的 富文本 的方法 是否有 AppleScript 方法 或技巧 将消息格式设置为 纯文本 我在尝
  • Tensorflow:如何在 python 中编写带有梯度的操作?

    我想用 python 编写一个 TensorFlow 操作 但我希望它是可微的 能够计算梯度 这个问题询问如何在 python 中编写操作 答案建议使用 py func 没有梯度 Tensorflow 用 Python 编写操作 TF 文档
  • Lumia Imaging SDK 图像混合创建分隔线

    我正在尝试使用 Lumia Imaging SDK 创建平铺背景JpegTools BlendAsync 方法 我循环调用该方法来合并所有平铺图像 该方法有效 但输出图像中存在不需要的线条 这些分隔线出现在单个图块图像的边界处 合并不干净
  • 当文件名有空格时,运行时 exec() 不运行命令[重复]

    这个问题在这里已经有答案了 我是 Java 新手 正在尝试将我的一个项目从 C 转换为 Java 以便将其与另一个 Java 程序结合起来 当我使用 Runtime exec 时 我很难获得正确的结果 我有以下程序段 Java 忽略处理给定
  • 在cpp中将字符串转换为_T

    我想转换string or char to the T但做不到 如果我写 tcscpy cmdline T hello world 它工作得很好 但是如果我写 char msg hello world tcscpy cmdline T ms
  • Spring中的数据库连接管理

    使用 Spring 框架时我们是否必须显式管理数据库资源 比如关闭所有打开的连接等 我读到 Spring 将开发人员从此类样板代码中解放出来 这是为了回答我在 Spring Web 应用程序中遇到的错误 org springframewor
  • 模式扩展以运行命令

    知道我能跑echo or mv扩展这样的模式 echo 0 9 A Z 我很想知道是否有办法执行相同的操作但运行命令 docker compose stop rm up d 上面的例子不起作用 但有某种方法可以实现这一点 分别运行 stop
  • 如何实现错误处理?

    我的 AutoIt 脚本生成了一个我想要处理的错误 将任何错误发送到自定义函数的方式也可以 在VBA中我使用OnErrorGoTo 但我无法在 AutoIt 中找到类似的东西 我的代码 Func Start While 1 If Proce
  • Apps 脚本 - 在 Google 表格上复制“将图像放入所选单元格”

    我目前正在通过 Apps 脚本功能在 Google 表格中插入多个图像插入图片 使用它 该函数将图像插入到单元格上方 而不是单元格内部 我可以通过单击三个点按钮 然后选择 将图像放入所选单元格 将该图像插入到单元格中 如下所示link 这里
  • 没有 Google Play 的 Android Admob

    我在网上找不到任何东西 有没有办法使用 AdMob SDK 通过我的应用程序获利 而无需将应用程序放在 Google Play 商店中 你们中有人可能知道吗 提前致谢 您无需通过 Google Play 分发应用程序即可使用 AdMob S
  • 嵌套查询 MVC LINQ

    我是新来的MVC and LINQ 目前 我在该项目上遇到了困难 并决定发布 My MVC View我想要实现的目标 Cut 1 20 2 40 Color 3 30 4 50 Perm 5 10 这是我的数据表的一些示例 ID Offer