Pregunta

Me estoy poniendo un error al intentar cargar un registro a través del constructor.

El constructor es:

public Document(Expression<Func<Document,bool>> expression);

Y trato de cargar un solo elemento en como esto

var x = new Document(f=>f.publicationnumber=="xxx");

publicationnumber no es una clave pero trató de hacer una que es una clave única y sigue sin ir ..

¿Estoy totalmente equivocado con respecto al uso del constructor? y ¿Puede alguien por favor dígame cómo utilizar ese constructor?

El error que estoy recibiendo es:
Método de ensayo TestProject1.UnitTest1.ParseFileNameTwoProductSingleLanguage lanzó excepción: System.NullReferenceException:

con la siguiente StackTrace:

  

SubSonic.Query.SqlQuery.Where[T] (expresión Expression1` expression)
Load`[T]`(T item, Expression
1expression)
db.Document..ctor(Expression``1
) en C: \ @ Proyectos \ DocumentsSearchAndAdmin \ DocumentsSearchAndAdmin \ \ generados ActiveRecord.cs: Línea 5613
  ten eliminado por simplicidad

Saludos
Dennis

¿Fue útil?

Solución 2

He llegado sólo la fuente subsónico, y descubrió que tenía que con el analizador de expresiones y mi falta de conocimiento de los mismos .. mi lado derecho de la expresión era en realidad un elemento en una matriz de cadenas - y S [PUBNO ] (PUBNO es una const) y fue en busca de una columna llamada s en lugar de publicationnumber, no sé si este error ia o no en las clases de LINQ

sin embargo - Me las he arreglado para conseguir que el trabajo mediante la creación de una variable local que contiene el valor de s [PUBNO] y el uso que en vez ...

// Dennis

Otros consejos

Uso == en lugar de =, es decir:.

...(f=>f.publicationnumber == "xxx");
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top