wie konvertieren von string zu int in linq to entity?
var trnlist = from tr in db.DebtorTransactions
join wr in db.Warranties
on tr.ProductID equals Convert.ToInt32(wr.PkfWarranty) into wrtd
from wr1 in db.Warranties
join sr in db.SalesReps
on wr1.fldSrId equals sr.pkfSrID into wrsr
from wr2 in db.Warranties
join ag in db.Agentsenter code here
on wr2.fldAgentID equals ag.pkfAgentID into wrag
select wrtd;
tr.ProductID is a int and wr.PKfWarranty is String
var rustul= convert.toint32(tr.ProductID) dose't sutable for me
is there any build in function of Linq to entity to do this?
danke im Voraus
tr.ProductID ist ein int und wr.PKfWarranty ist String
var rustul= konvertieren.toint32(tr.ProductID) Dosis nicht sutable für mich
gibt es eine build-in Funktion von Linq to entity zu tun?
danke im Voraus
var ints = strings.Select(x => int.Parse(x));
Nein, sir ..es funktioniert nicht
der Fehler "die beste überlast-Methode match für int.parse(string) hat einige ungültige Argumente"
ich habe versucht, wr.PkfWarranty.Select(x => int.Parse(x.ToString ())), aber immer noch seine nicht funktioniert
Bitte betrachten Sie dies SO: stackoverflow.com/questions/1245882/...
InformationsquelleAutor R K Sharma | 2013-10-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier sagen:
Und dann versuchen:
So... Sie versuchen, zu konvertieren, ein
int
zu einemint
? In einem Kommentar sagen Sie:Gut, wenn Sie versuchen, um call
int.Parse()
und übergeben es einemint
dann würden Sie wahrscheinlich bekommen, dass der genaue Fehler. Ich glaube, es gibt keine überladung für dieint.Parse()
akzeptiert einint
da, naja, der Wert ist bereits einint
.Blicken wir zurück auf Ihre problem-Beschreibung:
Und Sie wollen, vergleichen Sie diese beiden Werte? Dann werden Sie entweder konvertieren müssen
tr.ProductID
zu einemstring
:oder konvertieren
wr.PKfWarranty
zu einemint
:Einige Dinge zu beachten:
int
zu einemstring
ist ziemlich sicher, ich bezweifle, dass Sie jemals Probleme mit. Aber die Umwandlung von einerstring
zu einemint
übernimmt, dass der string werden kann in eineint
. Ist dies nicht der Fall, wenn der string hat alles, was in es dass nicht eineint
hat, oder noch eine Nummer zu groß, um fit in dieint
Daten geben.int.TryParse()
existiert für diesen Zweck, aber können schwierig sein zu verwenden, in einem in-line-LINQ-statement, vor allem, wenn, die Anweisung ist ein Ausdruck, der Baum, die Bedürfnisse zu produzieren, die SQL-code.int
zu einemstring
gibt es verschiedene Möglichkeiten, strings vergleichen. Je nachdem, ob das geschehen ist in den resultierenden SQL-code oder C# - code einen Unterschied macht. Wenn letzteres,string.Equals()
ist die bevorzugte Methode.Ich habe nicht Lesen Sie alle die Erklärung, ich wandelte an, der zweite Wert wird im Vergleich zu Int (Dank an Sie) und es funktionierte.
InformationsquelleAutor David