Domanda

C'è un posto che dettagli come impostare di quando si utilizza il SimpleRepository con SubSonic 3 è la tua POCO? Suona come è convenzione sulla configurazione, ma non riesco a trovare dove si spiega tale convenzione.

http://www.subsonicproject.com/docs/Conventions sembra che è stato significava per 2.0, ed è segnato anche incompleta. (BTW: mi piacerebbe aiutare a riorganizzare i documenti in più di un 2.0 e 3.0 come i documenti attuali sono un po 'di confusione su quale versione si riferiscono a.)

Per esempio mi piacerebbe sapere come mi piacerebbe andare su come configurare un

uno-a-uno

User <=> profilo

class User {
  Id
  ProfileId instead of Profile? or is Profile profile possible?
}

class Profile {
  Id
  UserId instead of User? or is User user possible?
}

Uno-a-molti

class User {
  Id
  IList<Post> Posts (?) or IList<int> PostIds (?) or is this implied somehow?  or is this just wrong?
}

class Post {
  Id
  UserId instead of User? or is User user possible?
}

Molti-a-molti

sto cercando di indovinare che avevo bisogno di impostare una molti a molti tavolo?

class User {
  IList<Blog> Blogs (?) or IList<int> BlogIds (?) or is this implied somehow?
}

class BlogsUsers {  // Do I have to create this class?
  UserId
  BlogId
}

class User {
  IList<User> Users (?) or IList<int> UserIds (?) or is this implied somehow?
}

Nella soluzione esempio, non sembra come questi sono impostati in modo da sto chiedendo come ci si fa a fare una (il mio esempio procede indovinare):

one-to-one

User.Profile

r.Single<Profile>(p=>p.User == userId);

genitore su uno-a-molti

Post.User

id = r.Single<Post>(postId).UserId;
r.Single<User>(id); // which kind of stinks with two queries, JOIN?

i bambini su uno-a-molti

User.Posts

r.Find<Post>(p=>p.UserId == userId)

o molti-a-molti

User.Blogs

ids = r.Find<BlogsUsers>(bu=>bu.UserId == userId);
r.Find<Blog>(b=>b.BlogId == ids);  // again with the two queries?  :)

Blog.Users

ids = r.Find<BlogsUsers>(bu=>bu.BlogId == blogId);
r.Find<User>(u=>u.UserId == ids);  // again with the two queries?  :)

presumo che ci deve essere un modo per non avere le due query e per queste proprietà per essere già generati automaticamente, in qualche modo. A dire il vero anche se ho avuto solo un'ora per giocare con tutto quello che la notte scorsa, quindi sono un po 'paura di Rob inveire contro di me. Mi dispiace! : P

Se questi non sono autogen'd allora dove sono punti di vista e le procedure per memorizzare 3.0? Per favore mi dia un link per quelli pure mentre siete a questo collega SO'er.

È stato utile?

Soluzione

Questa è probabilmente la miglior punto di partenza: http://subsonicproject.com/docs/Using_SimpleRepository

Le relazioni sono di impostazione nel codice, da voi, e noi non portano avanti quelle al DB (ancora - speriamo presto). Idealmente si imposta il modello di come si deve e quando si è pronti si va e manualmente "solidificare" le relazioni nel DB. Questo è quello di ridurre l'attrito durante lo sviluppo -. Integrità dei dati non è davvero qualcosa di cui preoccuparsi quando si costruisce un sito

Detto questo, so che la gente vuole questa funzione -. Ho solo bisogno di costruirlo

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top