2009-10-05 5 views
6

¿Alguien sabe de algún bibliotecas que implementan una abstracción en LINQ sobre el patrón Entity Attribute Value (EAV)? Tengo una base de datos grande legado EAV y yo estoy tratando de crear una capa de acceso a datos más limpia y la idea de usar LINQ atrae realmente lo que estoy buscando para cualquier código que puede utilizar para poner en marcha.¿Hay bibliotecas disponibles para realizar LINQ sobre el patrón Entity Attribute Value?

+0

¿Es posible añadir un enlace a algo como esto http://en.wikipedia.org/wiki/Entity-attribute-value_model para aquellos que no están familiarizados con EAV? –

Respuesta

1

haber estado involucrado en varios proveedores LINQ, puedo decir que no hay abstracciones LINQ para EAV que yo sepa. Creo que eres SOL.

Sé que dijo que ha heredado una base de datos existente EAV, pero si usted tiene la opción de usar otra cosa, tal vez se this post balancearse lejos de EAV. :-)

0

Con .NET 4 y objetos dinámicos, no es tan difícil representar el EAV como DynamicObject y luego manejar el acceso a los datos entre los "campos" y las filas apropiadas. Traducir consultas completas de LINQ sobre EAV es más difícil.

Dicho esto, muchos casos que realmente necesitan EAV menudo se pueden lograr a través de columnas de SQL minimalista, tipos de datos XML, o alternativas de bases de datos NoSQL documento. La dificultad en la construcción de los proveedores LINQ contra algunas de estas alternativas es no trivial como se ve en los esfuerzos para crear LINQ para MongoDB y RhinoDB.

Cuestiones relacionadas