2012-09-21 18 views
6

Ho controllato la documentazione di ServiceStack, ma non ho trovato un modo per eseguire molte o molte relazioni con ServiceStack.OrmLite, è supportato? C'è una soluzione alternativa (senza scrivere sql raw)?Molte e numerose relazioni con ServiceStack.OrmLite

mi piacerebbe avere qualcosa di simile:

Articolo < - ArticleToTag -> Tag

Grazie !!

risposta

11

Non è gestito implicitamente automaticamente per te dietro le quinte se è questo che intendi? Ma dato che OrmLite è solo un sottile involucro attorno alle interfacce ADO.NET tutto è possibile.

In OrmLite, per impostazione predefinita tutte le mappe POCO 1: 1 con una tabella. Quindi, se si desidera il layout della tabella, lo si creerà esattamente come appare nel database, ad es.

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

db.Insert(article, tag, articleTag); 

Anche se si potrebbe desiderare di sfruttare il built-in blobbing in OrmLite in cui qualsiasi tipo complesso appena viene serializzato e memorizzato in un unico campo di testo. Così si potrebbe fare qualcosa di simile:

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

Dove Tag è solo un List<string> e OrmLite si prenderà cura di serializzazione in modo trasparente nel campo del database per voi.

+0

Grazie per la risposta !! –

Problemi correlati