2012-09-21 26 views
6

He estado comprobando la documentación de ServiceStack, pero no he encontrado una manera de hacer muchas o muchas relaciones con ServiceStack.OrmLite, ¿es compatible? ¿Hay alguna solución (sin escribir sql en bruto)?Relaciones muchos a muchos con ServiceStack.OrmLite

me gustaría tener algo como esto:

artículo < - ArticleToTag -> Tag

Gracias !!

Respuesta

11

No se maneja implícitamente automáticamente detrás de las escenas si eso es lo que quiere decir? Pero como OrmLite es solo una envoltura delgada alrededor de las interfaces ADO.NET todo es posible.

En OrmLite, de forma predeterminada cada POCO mapea 1: 1 con una tabla. Entonces, si desea el diseño de la tabla, debe crearlo tal como se ve en su base de datos, p.

var article = new Article { ... }; 
var tag = new Tag { ... }; 
var articleTag = new ArticleTag { ArticleId = article.Id, TagId = tag.Id }; 

db.Insert(article, tag, articleTag); 

Aunque es posible que desee tomar ventaja de la incorporada en el blobbing en OrmLite donde cualquier tipo complejo sólo se pone serializado y se almacena en un solo campo de texto. Por lo que podría hacer algo como:

var article = { new Article { Tags = { "A","B","C" } }; 

Dónde Etiquetas es sólo un List<string> y OrmLite se hará cargo de la serialización de forma transparente en el campo de base de datos para usted.

+0

Gracias por la respuesta! –

Cuestiones relacionadas