c# – LINQ将行的列值分隔为.net中的不同行

c# – LINQ将行的列值分隔为.net中的不同行,第1张

概述考虑我有一个从oracle数据库检索的数据表,格式如下 SNo. | Product | Cost-------------------------------------------------1 | colgate,closeup,pepsodent | 502 | rin,surf 考虑我有一个从oracle数据库检索的数据表,格式如下
SNo.  |      Product                      |  Cost-------------------------------------------------1     |      colgate,closeup,pepsodent    |  502     |      rin,surf                     |  100

我需要使用linq.Need将其更改为以下格式,以通过保持其他列相同来使用逗号分隔产品列.

SNo.  |        Product      |   Cost-------------------------------------1     |        colgate      |    501     |        closeup      |    501     |        pepsodent    |    502     |        rin          |    1002     |        surf         |    100
解决方法 请试试这个:
List<Product> uncompressedList = compressedProducts    .SelectMany(singleProduct => singleProduct.Productname                                    .Split(',')                                    .Select(singleProductname => new Product                                     {                                         SNo = singleProduct.SNo,Productname = singleProductname,Cost = singleProduct.Cost                                     }))    .ToList();

编辑:

产品类定义如下:

public class Product{    public Int32 SNo { get; set; }    public String Productname { get; set; }    public Int32 Cost { get; set; }}

和compressedProducts只是第一个示例中的初始产品列表.

总结

以上是内存溢出为你收集整理的c# – LINQ将行的列值分隔为.net中的不同行全部内容,希望文章能够帮你解决c# – LINQ将行的列值分隔为.net中的不同行所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1251565.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存