小编And*_*eas的帖子

Lambda表达帮助

我有一个问题如何编写一个lambda表达式,我有一个像这样的mssql查询工作:

SELECT KUNDNR 
FROM halldb.dbo.KUND
wWHERE NOT EXISTS 
(
    SELECT KundID 
    FROM halldb.dbo.KundInfo 
    WHERE KUNDNR = CONVERT(Varchar(50), KundInfo.KundID)
)
ORDER BY KUNDNR
Run Code Online (Sandbox Code Playgroud)

而我正在尝试使用lambda表达式是这样的:

db.KUNDs.Select(x => x).Except(db.KundInfos.Select(x => x));
Run Code Online (Sandbox Code Playgroud)

但由于KUNDs和KundInfo是两种不同的物体,它们不会起作用......我可以这样:

db.KUNDs.Select(x => x.KUNDNR).Except(db.KundInfos.Select(x => x.KundID.ToString()));
Run Code Online (Sandbox Code Playgroud)

但是当我真的想要获得一个包含KUNDs对象的列表时,那只会给我一个包含KUNDs.KUNDNR字符串的列表.

我怎样才能做到这一点?

帮助将非常感谢!

c# linq lambda expression

3
推荐指数
1
解决办法
719
查看次数

Lambda表达辅助

我试图查询列表,但无法按照我想要的方式得到结果,我对linq有点新鲜,所以我相信这对你们来说很容易.

宾语:

public class myObject
{
    public string Date { get; set; }
    public string Log { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我要查询的列表来自:

public List<myObject> getMyObjects()
{
    // Code to get objects, ill leave it out here and return new list for this example
    return new List<myObject>();
}
Run Code Online (Sandbox Code Playgroud)

我想得到的结果是一个列表,其中包含不同的日期和每个日期的日志数量,我将在下面提供我的不良尝试

var result = (from data in errorList
                     select new 
                     {
                        datum = data.Datum.Distinct(),
                        antal = data.Felkod
                     }).GroupBy(x => x.datum);
Run Code Online (Sandbox Code Playgroud)

我怎么能以正确的方式做到这一点?非常感谢帮助

c# linq lambda

2
推荐指数
1
解决办法
95
查看次数

将字符串排序到另一个字符串的更简洁方法

我有一个字符串可能看起来像这样:"3,7,12-14,1,5-6"

我需要做的是将其更改为如下所示的字符串:"1,3,5,6,7,12,13,14"

我已经使下面的代码工作,但我非常感谢帮助如何使用更少的代码行更清洁的方式:

private string sortLanes(string lanesString)
    {
        List<string> sortedLanes = new List<string>();

        if (lanesString.Contains(',') || lanesString.Contains('-'))
        {
            List<string> laneParts = lanesString.Split(',').ToList();

            foreach (string lanePart in laneParts)
            {
                if (lanePart.Contains('-'))
                {
                    int splitIndex = lanePart.IndexOf('-');
                    int lanePartLength = lanePart.Length;

                    int firstLane = Convert.ToInt32(lanePart.Substring(0, splitIndex));
                    int lastLane = Convert.ToInt32(lanePart.Substring(splitIndex + 1, lanePartLength - splitIndex - 1));
                    while (firstLane != lastLane)
                    {
                        sortedLanes.Add(firstLane.ToString().Trim());
                        firstLane++;
                    }
                    sortedLanes.Add(lastLane.ToString());
                }
                else
                {
                    sortedLanes.Add(lanePart.Trim());
                }
            }
            sortedLanes.Sort();
            sortedLanes = sortedLanes.OrderBy(x => x.Length).ToList();

            lanesString = "";
            foreach …
Run Code Online (Sandbox Code Playgroud)

c# linq string string-formatting

2
推荐指数
1
解决办法
95
查看次数

Sql查询帮助初学者

嗨,我需要一个查询帮助(是的,我一直在尝试搜索,但找不到帮助我的东西)

我有两张桌子:

顾客

  • CustomerID
  • CountryID

国家

  • CountryID
  • Country

我如何编写查询以获得如下结果:

CountryID, Country, NumberOfOccurancesOfThisCountryInTheCustomerTable
Run Code Online (Sandbox Code Playgroud)

真的很感激帮助!

sql

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

标签 统计

c# ×3

linq ×3

lambda ×2

expression ×1

sql ×1

string ×1

string-formatting ×1