Frage

Ich versuche, einige CRUD-Funktionalität für eine Legacy-Datenbank und mit dem Entity Framework als ORM-Tool zu erstellen. Eine Tabelle, ‚Websites‘, hat eine Guid Typ ‚Id‘ Spalte, die nie von den Nutzern und einem Integer-Typ zu sehen ist ‚SITEID‘, die die Nutzer verwenden, um eine Website identitfy.

Für Gott weiß, was Grund der numerischen SITEID Spalte vom Typ varchar (10) ist in der Datenbank, aber jeder SITEID dort eine ganze Zahl und alle zukünftigen SiteIds auch ganze Zahlen sein.

Für die Zwecke der Erstellung eines neuen, einzigartigen, Integer-Typ SITEID zu erzeugen, wie kann ich tun, was effektiv ist ein ‚SELECT MAX (SITEID)‘ mit Entity SQL oder Linq to Enities ??

Mit anderen Worten, wie kann ich jeden Wert in einer Spalte von Varchar konvertieren (10) in eine int und wählen Sie den maximalen Wert aus diesem Satz ??

Das sah vielversprechend aus, aber Linq kann die Parsen in eine „store-Prozedur“ nicht konvertieren ...

int x = entities.Sites.Max(s => int.Parse(s.SiteId));
War es hilfreich?

Andere Tipps

Das funktioniert ...

String[] numbers = new String[] { "2", "34", "5", "23", "5", "1" };

var max = numbers.Max(x => Int32.Parse(x));
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top