c# - multiple - ¿Cuáles son algunas buenas alternativas de Entity Framework
entity framework include related entities (12)
Estoy usando Entity Framework ahora y constantemente tengo que escribir en línea sql porque Entity framework no admite la búsqueda de texto completo y otras características. ¿Hay algún ORM que tenga muchas características que admita consultas avanzadas? Siento que si a veces escribo inline sql podría hacerlo todo en inline sql. Cualquier ayuda aqui
Siento que si a veces escribo inline sql podría hacer todo en inline sql
¿Seriamente? Al usar cualquier ORM, siempre va a llegar a situaciones en las que es mejor, más limpio o más eficiente, usar SQL o llamar a un proceso almacenado. No debes confiar ciegamente en que haga absolutamente todo por ti en todas las situaciones.
¿Has mirado nHibernate ?
Si busca nHibernar y la búsqueda de texto completo , encontrará una variedad de enlaces que hablan sobre ese tipo particular de implementación de búsqueda.
Como la mayoría de las personas aquí, recomendaría NHibernate, pero es posible que desee utilizarlo junto con la implementación ActiveRecord de CastleProject . El NHibernate por sí solo puede tardar un poco en acostumbrarse, pero cuando se lanza ActiveRecord encima, las cosas se vuelven mucho más fáciles. Pude hacer una conversión EntityFramework-> NHibernate / ActiveRecord realmente rápido.
Echa un vistazo a:
- Consultas LINQ en DataObjects.Net . Si estás interesado en la mayoría de las partes complejas, comienza desde la cola.
- LINQ avanzado en DataObjects.Net . Algunas consultas SQL subyacentes se muestran allí.
La mayoría de los ORMs todavía requerirán un poco de SQL en línea de vez en cuando. NHibernate, Linq 2 Sql, etc. no son compatibles con la búsqueda de texto completo (NHibernate tiene NHibernate.Search que utiliza Lucene.NET para realizar búsquedas de texto completo, Linq 2 Sql tiene acceso a los procedimientos almacenados que puede crear para ese uso búsqueda de texto completo).
Sin embargo, esto no significa que deba desecharse utilizando un ORM por completo. Hay una tonelada de código de plomería repetitiva que los ORM pueden evitar que escriba y los casos de uso generales son relativamente fáciles de ejecutar (por ejemplo, operaciones CRUD) con cualquier ORM.
Probar con nHibernate
Puede buscar entidades de CodeFluent pero debe comprender que no se basa internamente en ninguna herramienta ORM o de terceros.
Entity Framework es un ORM, mientras que CodeFluent Entities es una fábrica de software completamente nueva. Utiliza un enfoque de modelado natural y visual (como Entity Framework e integrado en Visual Studio) y puede generar scripts de base de datos, capa de datos orientada a objetos (código C #, VB), servicios web e incluso componentes de UI.
Puede buscar en LLBLGen Pro o en OpenAccess de Telerik, pero NHibernate será la solución con la comunidad más grande a su alrededor.
Secundando lo que dijeron los demás, nHibernar. Además, encontré este enlace : búsqueda de texto completo y nHibernación.
Soy fan de SubSonic por Rob Conery. Es (fue) simple y fácil de configurar y usar.
NHibernate es una de las alternativas de OR / M más grandes y de código abierto que me gustan. Puede hacer algunas cosas bastante "avanzadas" pero tiene una curva de aprendizaje empinada.
Mindscape LightSpeed es un o / r mapper para .NET que admite la búsqueda de texto completo (a través de Lucene, pero extensible para que puedas agregar el tuyo).
También es compatible con LINQ, tiene un diseñador integrado de Visual Studio con una combinación completa de esquemas de esquema para que pueda trabajar primero con el modelo o primero con la base de datos, lo que sea más atractivo para usted :-)
También hay una versión gratuita que puede utilizar para decidir si es adecuada para usted.
Espero que eso ayude.