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)
Load`[T]`(T item, Expression
1expression)
db.Document..ctor(Expression``1
Ausdruck) in C: \ @ Projects \ DocumentsSearchAndAdmin \ DocumentsSearchAndAdmin \ generiert \ ActiveRecord.cs: Linie 5613
  Ruhe für Einfachheit entfernt

Viele Grüße
Dennis

War es hilfreich?

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");
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top