Click here to Skip to main content
15,891,905 members
Home / Discussions / Design and Architecture
   

Design and Architecture

 
GeneralRe: SCRUM Pin
Ravi Sant17-Jan-11 21:57
Ravi Sant17-Jan-11 21:57 
QuestionObject heuristic Pin
Leslie Sanford5-Jan-11 11:35
Leslie Sanford5-Jan-11 11:35 
AnswerRe: Object heuristic Pin
Luc Pattyn5-Jan-11 13:06
sitebuilderLuc Pattyn5-Jan-11 13:06 
GeneralRe: Object heuristic Pin
Leslie Sanford5-Jan-11 13:51
Leslie Sanford5-Jan-11 13:51 
GeneralRe: Object heuristic Pin
Luc Pattyn5-Jan-11 14:06
sitebuilderLuc Pattyn5-Jan-11 14:06 
AnswerRe: Object heuristic Pin
Paul Michalik7-Jan-11 1:24
Paul Michalik7-Jan-11 1:24 
QuestionDatabase Code Pin
Leslie Sanford5-Jan-11 5:46
Leslie Sanford5-Jan-11 5:46 
AnswerRe: Database Code Pin
dasblinkenlight12-Jan-11 11:42
dasblinkenlight12-Jan-11 11:42 
In my experience, when it comes to "combinatorial explosions", your projections (i.e. $columns) and ordering (i.e. $orderBy) are not as much a problem as the query conditions themselves: you will need to hard-code nearly as many values passed for the $where as the number of 'get<...>by<...>' functions you previously needed to code.
The solution I've been using is generating my 'where' clauses dynamically. This way, instead of pre-made 'where' clauses you'd build collections of uniform items from which your SQL can be generated. For example, a list of name-value pairs could be used to generate a conjunction like name1=value1 AND name2=value2 AND ... nameN=valueN. More advanced solutions include use of expression libraries, such as LINQ's Expression in .NET, to formulate composite queries of arbitrary complexity (with 'OR's, 'AND's, 'NOT's, and function calls).

P.S. Any time you generate SQL dynamically you should be very careful to avoid the SQL Injection Trap; other than that, you should be OK.
QuestionMatching between product and customer personal information Pin
Yanshof3-Jan-11 20:07
Yanshof3-Jan-11 20:07 
AnswerRe: Matching between product and customer personal information Pin
dasblinkenlight13-Jan-11 6:24
dasblinkenlight13-Jan-11 6:24 
QuestionNeed guidance on designing and preparing MCPD Pin
Praveen Raghuvanshi3-Jan-11 7:11
professionalPraveen Raghuvanshi3-Jan-11 7:11 
AnswerRe: Need guidance on designing and preparing MCPD Pin
Richard MacCutchan4-Jan-11 5:36
mveRichard MacCutchan4-Jan-11 5:36 
GeneralRe: Need guidance on designing and preparing MCPD Pin
Praveen Raghuvanshi4-Jan-11 17:21
professionalPraveen Raghuvanshi4-Jan-11 17:21 
GeneralRe: Need guidance on designing and preparing MCPD Pin
Richard MacCutchan4-Jan-11 21:39
mveRichard MacCutchan4-Jan-11 21:39 
QuestionPossible inefficiency in post-increment FOR loop? Pin
Xpnctoc30-Dec-10 15:12
Xpnctoc30-Dec-10 15:12 
AnswerRe: Possible inefficiency in post-increment FOR loop? Pin
Richard MacCutchan30-Dec-10 23:05
mveRichard MacCutchan30-Dec-10 23:05 
AnswerRe: Possible inefficiency in post-increment FOR loop? Pin
Luc Pattyn30-Dec-10 23:37
sitebuilderLuc Pattyn30-Dec-10 23:37 
GeneralRe: Possible inefficiency in post-increment FOR loop? Pin
fat_boy31-Dec-10 2:12
fat_boy31-Dec-10 2:12 
AnswerRe: Possible inefficiency in post-increment FOR loop? Pin
fat_boy31-Dec-10 2:13
fat_boy31-Dec-10 2:13 
AnswerRe: Possible inefficiency in post-increment FOR loop? Pin
Peter_in_27804-Jan-11 18:21
professionalPeter_in_27804-Jan-11 18:21 
AnswerRe: Possible inefficiency in post-increment FOR loop? Pin
dasblinkenlight13-Jan-11 2:18
dasblinkenlight13-Jan-11 2:18 
QuestionDiagramming? Pin
dawmail33328-Dec-10 22:48
dawmail33328-Dec-10 22:48 
AnswerRe: Diagramming? Pin
fat_boy31-Dec-10 2:18
fat_boy31-Dec-10 2:18 
QuestionDeveloping to try to make a difference? Pin
Todd Baxter28-Dec-10 3:16
Todd Baxter28-Dec-10 3:16 
AnswerRe: Developing to try to make a difference? Pin
Pete O'Hanlon28-Dec-10 3:27
mvePete O'Hanlon28-Dec-10 3:27 

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.