Mit Konstruktor Ladedaten in Subsonic3?
-
23-09-2019 - |
Frage
Ich erhalte eine Fehlermeldung beim Versuch, einen Datensatz durch den Konstruktor zu laden.
Der Konstruktor ist:
public Document(Expression<Func<Document,bool>> expression);
und ich versuche, ein einzelnes Element zu laden, in wie diese
var x = new Document(f=>f.publicationnumber=="xxx");
publicationnumber ist kein Schlüssel aber versucht sie ein es einen eindeutigen Schlüssel und noch nicht gehen ..
Am i völlig falsch in Bezug auf die Verwendung des Konstruktor? und kann jemand bitte sagen Sie mir, wie man diesen Konstruktor verwenden?
Der Fehler ich erhalte ist:
Prüfnorm TestProject1.UnitTest1.ParseFileNameTwoProductSingleLanguage warf Ausnahme: System.NullReferenceException:
mit dem folgenden Stack Trace:
SubSonic.Query.SqlQuery.Where
[T]
(Expression1` expression)
1
Load`[T]`(T item, Expressionexpression)
Ausdruck) in C: \ @ Projects \ DocumentsSearchAndAdmin \ DocumentsSearchAndAdmin \ generiert \ ActiveRecord.cs: Linie 5613
db.Document..ctor(Expression``1
Ruhe für Einfachheit entfernt
Viele Grüße
Dennis
Lösung 2
Ich habe gerade die SubSonic Quelle bekommen, und fand heraus, dass es mit dem Ausdruck Parser hatte und mein Mangel an Wissen davon .. meine rechte Seite des Ausdrucks war tatsächlich ein Element in einem String-Array - und s [PUBNO ] (PUBNO ist ein const), und es wurde für Spalte mit dem Namen s statt publicationnumber sucht, weiß ich nicht, ob dies ia Fehler oder nicht in den Linq Klassen
nichtsdestoweniger - ich habe es geschafft, es an die Arbeit zu erhalten, indem eine lokale Variable zu schaffen, den Wert s [PUBNO] und die Verwendung dieser Stelle ...
enthalten// dennis
Andere Tipps
Verwenden ==
statt =
, das heißt:.
...(f=>f.publicationnumber == "xxx");