¿Cómo evitar el caché o la concurrencia en el ORM de acceso a datos de Telerik?
-
02-01-2020 - |
Pregunta
Ahora quiero calcular la concentración promedio de pm2.5 en estos días en cada ciudad mediante un procedimiento almacenado. El primer parámetro de entrada del procedimiento almacenado es una cadena de nombre de ciudad como Beijing,NewYork
, y los otros parámetros de entrada son beginTime
y endTime
.Y la clase de salida se llama AvgPM25.
public class AvgPM25{
public String CityName{get;set;}
public decimal AvgValue{get;set;}
}
Paso parámetros como Beijing,NewYork
,20140801
,20140802
, calcula y genera el resultado. Ahora mi problema es que a veces intento cambiar los parámetros como el tiempo de búsqueda, y los parámetros de entrada son como Beijing,NewYork
,20130801
,20140802
, pero aún así genera el resultado que es el resultado de la búsqueda anterior. ¿Este problema se debe al caché o a la concurrencia? Intento establecer la identidad del 'Nombre de la ciudad' del AvgPM25
La propiedad de clase es Verdadera y establece la política de caché en NoCache y configura el modo de concurrencia para que se cambie, pero aún tiene este problema. ¿Cómo solucionarlo?
Solución
Aunque cambia el tiempo de búsqueda, la identidad no cambia. Cambiar la clase de salida a continuación puede ayudarlo. O puede intentar establecer la identidad del AvgPM25
¿La propiedad de clase es verdadera?
public class AvgPM25{
//identity:true,cache:default
public String CityName{get;set;}
public decimal AvgValue{get;set;}
//identity:true,cache:default,conbined with the two strings,like '2013080120140802'
public string SearchTIme{get;set;}
}