Int.Parse in Linq Expression

Ich habe folgenden Linq-Ausdruck. Ich möchte die Summe der numerischen Werte im Feld Nvarchar berechnen. Ich benutze folgenden Code, um dies zu tun. Aber ich bekomme eine Fehlermeldung, wenn ich versuche, dies auszuführen.

        var m = new MaterialModelContainer();

        var list = (from x in
                        (
                            from inv in m.INVs
                            join l in m.LIBs on inv.MESC equals l.MESC
                            join o in m.OUTs on inv.MESC equals o.MESC
                            join t in m.TRANs on inv.MESC equals t.MESC
                            where t.TYPE == "60"
                            select new
                                {
                                    l.MESC,
                                    l.LINE_NO,
                                    l.UNIT_LINE,
                                    Description = l.DES + " " + l.PART_NO,
                                    inv.NEW_QTY,
                                    o.PJ,
                                    o.DATE,
                                    o.QTY,
                                    o.QTY_REC,
                                    TranQty = t.QTY,
                                    tranDate = t.DATE

                                }
                        )
                    group x by
                        new
                            {
                                x.MESC,
                                x.LINE_NO,
                                x.UNIT_LINE,
                                x.Description,
                                x.NEW_QTY,
                                x.PJ,
                                x.DATE,
                                x.QTY,
                                x.QTY_REC
                            }
                    into g
                    select new
                        {
                            QTY_Consum_1 = g.Where(c => int.Parse(c.tranDate) >= cuDate && int.Parse(c.tranDate) <= endDate).Sum(d => int.Parse(d.TranQty))

                        }
                   ).ToList();

Fehlerbeschreibung:

LINQ to Entities erkennt die Methode 'Int32 Parse (System.String)' nicht und diese Methode kann nicht in einen Geschäftsausdruck übersetzt werden

Wie kann ich dieses Problem lösen und diesen Code besser schreiben?

Ich ändere den Code dazu

 select new
                            {
                                QTY_Consum_1 = g.Where(c => SqlFunctions.StringConvert(c.tranDate) >= cuDate && SqlFunctions.StringConvert(c.tranDate) <= endDate).Sum(d => SqlFunctions.StringConvert(d.TranQty)),
                               g.Key.MESC
                            }
                       ).ToList();

bekomme aber diesen fehler

Antworten auf die Frage(7)

Ihre Antwort auf die Frage