Aș dori să creeze un stil de Facebook „Ce este nou“ vizualizare pentru cererea mea asp.net MVC.
Acest lucru ar putea genera conținut, cum ar fi ...
* Ciaran sent a message to The Rise and Fall of the Rockets
* Rick is going to Songs for the bathtub on Thursday, 28 June 2009
* Col became a fan of The Rise and Fall of the Rockets
* Leeroy posted Busk To Beat Cancer
* Tom went to HMV Showcase on Friday, 19 May 2009
El este abordarea care este în prezent în capul meu ....
Fiecare dintre aceste elemente reprezintă diferite tipuri de conținut.
De exemplu, concerte, stiri, comentarii etc.
Fiecare tip de conținut este stocat într-un tabel de baze de date diferite și anume gig-uri, știri, comentarii etc:
Atunci când se adaugă conținut la cererea (de exemplu, este creată o știre) Sunt de planificare pe crearea unei intrări suplimentare într-un „tabel WhatsNew“
Tabelul 1: WhatsNew
id, contentId, createdDate
Masa 2:
userId, contentId
Atunci când un utilizator a vizualizat o bucată de conținut o intrare se adaugă la tabelul 2 (ID-ul utilizatorului și conținutul).
Punctul de vedere de mai sus este creat de:
1) Returnarea contentIds din tabelul WhatsNew care nu au o intrare în tabelul 2 pentru utilizator autentificat special, ordonate după dată.
Apoi am întreb newsManager mea, gigsManager etc să-mi dea conținut rezumat pe baza acestor id-uri. Pot trece doar toate ID-urile, chiar dacă acestea pot reprezenta diferite tipuri de conținut, deoarece contentids sunt GUID și eu sunt presupunând că am obiceiul primi nici coliziuni în tabele mele (am doar un singur db). Alternativ, am putea folosi un discrimator de un fel ....
Toate obiectele rezumat să pună în aplicare ISummary și pot conține, de asemenea, date personalizate. Deci, am acum o listă pe care am trece la o vedere ...
Fiecare tip de sinteză are o vedere parțială, care știe cum să-l facă. Parțială utilizată pentru a face un anumit element va fi selectat pe baza tipului de rezumate .. (Rețineți că lista va conține diferite tipuri de rezumat ....
Rețineți că nu vreau masa WhatsNew să conțină, de fapt corzile principale, cum ar fi „Rick va Cântece pentru cada de baie joi, 28 iunie 2009„, deoarece acest lucru va face dificilă
schimba modul în care pot genera aceste - de exemplu, am putea să le frază în mod diferit în funcție de locația utilizatorilor.
Internaționaliza date etc.
De asemenea, acest lucru ar însemna, de asemenea, că spune newsManager / gigsManager care a generat titlul ar avea nevoie de cunoștințe despre traseul pe site-uri ..
de exemplu, titlul „Rick va Cântece pentru cada de baie pe Joi douăzeci și opt-06-2009„conține mai multe link-uri !!
Gânduri? Asta pare sensibil? Se simte scârboasă.













