Click here to Skip to main content
15,902,299 members
Home / Discussions / Design and Architecture
   

Design and Architecture

 
RantRe: Multiple database support Pin
Jessn9-Dec-08 10:38
Jessn9-Dec-08 10:38 
AnswerRe: Multiple database support... example [modified] Pin
Jessn9-Dec-08 10:40
Jessn9-Dec-08 10:40 
GeneralReplicating Business Rules on a Web Client Pin
Brady Kelly28-Oct-08 0:00
Brady Kelly28-Oct-08 0:00 
GeneralRe: Replicating Business Rules on a Web Client Pin
Ray Cassick4-Nov-08 10:51
Ray Cassick4-Nov-08 10:51 
GeneralRe: Replicating Business Rules on a Web Client Pin
Mark Churchill4-Nov-08 12:25
Mark Churchill4-Nov-08 12:25 
QuestionPatterns Pin
CodingYoshi23-Oct-08 3:57
CodingYoshi23-Oct-08 3:57 
AnswerRe: Patterns Pin
Leslie Sanford23-Oct-08 11:52
Leslie Sanford23-Oct-08 11:52 
AnswerRe: Patterns Pin
Mark Churchill23-Oct-08 13:36
Mark Churchill23-Oct-08 13:36 
The way most "modern" (and by this I don't mean code generators) data layers perform the O/R mapping between the business object definitions and the database is by a set of metadata that describes how the fields match up. So when you add a "Favourite Colour" field, you add the field to the database. Then (either manually or automatically depending on your tool) add the field to your business object, and update the mapping. The mapping is then used to handle the actual queries at runtime.

A basic CRUD form could be generated at runtime using a similar set of metadata. Diamond Binding uses attributes on the business objects to say "this field comes from FaveColor" - you could use a similar strategy to decorate your business objects with "default view/controller" attributes - or chuck this mapping in a seperate file (probably a "technically" better solution than having your model aware of the default view/controller). You could end up with the class being decorated with [DefaultEditor(typeof(AutomagicCRUDController), typeof(AutomagicCRUDView)] and your new Colour field having a [FieldEditor(typeof(ColorPicker))].

Unfortunately I think you'll find that your clients will end up wanting minor changes to every form you show them, and you'll end up with something pretty close to doing it manually anyway. So my pattern tip is "Hire a load of graduates and get them used to the pain of dealing with clients" Wink | ;)


GeneralRe: Patterns Pin
CodingYoshi24-Oct-08 3:38
CodingYoshi24-Oct-08 3:38 
GeneralRe: Patterns Pin
Urs Enzler2-Nov-08 0:30
Urs Enzler2-Nov-08 0:30 
GeneralRe: Patterns Pin
Mark Churchill2-Nov-08 14:22
Mark Churchill2-Nov-08 14:22 
GeneralRe: Patterns Pin
Urs Enzler2-Nov-08 20:56
Urs Enzler2-Nov-08 20:56 
AnswerRe: Patterns Pin
Samer Aburabie17-Nov-08 12:05
Samer Aburabie17-Nov-08 12:05 
Questionin search of a better printing/reporting mechanism Pin
giddy_guitarist19-Oct-08 0:56
giddy_guitarist19-Oct-08 0:56 
AnswerRe: in search of a better printing/reporting mechanism Pin
User 171649223-Oct-08 9:51
professionalUser 171649223-Oct-08 9:51 
AnswerRe: in search of a better printing/reporting mechanism Pin
Mycroft Holmes15-Nov-08 23:22
professionalMycroft Holmes15-Nov-08 23:22 
GeneralRe: in search of a better printing/reporting mechanism Pin
giddy_guitarist16-Nov-08 0:34
giddy_guitarist16-Nov-08 0:34 
QuestionForm Template - requirement gathering Pin
iamshaan13-Oct-08 5:12
iamshaan13-Oct-08 5:12 
QuestionRe: Form Template - requirement gathering Pin
led mike13-Oct-08 5:45
led mike13-Oct-08 5:45 
AnswerRe: Form Template - requirement gathering Pin
Pete O'Hanlon13-Oct-08 8:18
mvePete O'Hanlon13-Oct-08 8:18 
GeneralRe: Form Template - requirement gathering Pin
Paul Conrad13-Oct-08 12:14
professionalPaul Conrad13-Oct-08 12:14 
GeneralRe: Form Template - requirement gathering Pin
User 171649213-Oct-08 12:30
professionalUser 171649213-Oct-08 12:30 
GeneralRe: Form Template - requirement gathering Pin
Paul Conrad13-Oct-08 12:33
professionalPaul Conrad13-Oct-08 12:33 
QuestionTacking on external use to an intranet web app Pin
Keith Andersch9-Oct-08 5:02
Keith Andersch9-Oct-08 5:02 
GeneralCanal Manager framework for distributed application Pin
amspb19-Oct-08 0:28
amspb19-Oct-08 0:28 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.