|
| |
| swonderme | Asp.Net User |
| Data layer, one big one, or many small ones??? | 12/2/2005 6:21:22 PM |
0 | |
|
I'm building a single, large-scale application in DNN that will contain
multiple modules (probably 30 to 40) and it's own data
model. Basically, I'm using DNN as my application architecture to
take advantage of it's security model, content management, look and
feel, dynamic page creation, etc... I'm new to DNN, but have been
programming in vb, c#, and other languages for a long time.
It seems that each DNN module has it's own data layer that handles its
one or maybe two tables. Since I'm building a complete
application, each of my modules will focus on at least of couple of
tables from my data model, but all will at least refernce other tables
as well. In addition I may have some complicated modules that may
use many, many tables from my data model.
What's the best way to approach this? Should I create a little
tiny data layer for each module that just deals with the specific
tables that a particular module deals with, or should I create one data
layer project containing all my tables and just reference that one
project in each module? If I do that (one data layer) will it
work, and how would I go about it exactly? Just create a project
(or a solution?), build my data layer code, compile it, and reference
that one project in each module?
I know that most modules just have their own data layer, but how does
the core handle this? I assume they have one data layer with
every table in it? And then each core programmer just references
that single data layer?
Any of you folks that have built an application that spans many, many
modules and has one large data model.....how did you handle your data
layer? One big one or many smal ones? It seems like for my
situation one data layer is the way to go, but I'd love to hear how
other people have done this, and I'd love to see a quick example or
verbal walk through if any would care to help me out. I'll give
back as I get rolling on this project as I discover and write new and
useful tools.
Or, if there's anything I'm missing or if I am coming at this from the wrong angle, please let me know.
Thanks all.
|
| anantatman | Asp.Net User |
| Re: Data layer, one big one, or many small ones | 12/2/2005 11:06:27 PM |
0 | |
|
I think it depending on what you want to do with those modules. If you
are going to use those modules separately in a different configuration,
it makes sense to make little DALs for them separately like how
standard distributed Rainbow or DNN modules are made now.
I personally would do a large DAL and refer to it from everything else. Makes it much easier to program and get things done.
Rahul Singh CEO, AnantBlog |
| GOHDS | Asp.Net User |
| Re: Data layer, one big one, or many small ones??? | 12/4/2005 5:36:43 AM |
0 | |
|
I do most of my heavy lifting in storeprocedures. I implement the data access as one big layer. Separate from the presentation layer. This allows me to use the data layer in either a windows ui or asp pages.
I created a code generator that builds the data acess layer for me. This allows me to easily regenerate the data-access layer anytime i make changes to the database.
I recommend the following book Code Generation in Micosoft .Net by K Dollard. Is not a dnn related book but it has some great insights on how to architect your projects for code generation.
Regards
ray
|
| GOHDS | Asp.Net User |
| Re: Data layer, one big one, or many small ones??? | 12/4/2005 8:52:08 PM |
0 | |
|
I don't know of any drawback, other that you will be doing things your way instead of the dnn way of doing things. If you intend to sell your app to dnn module/developers that could be a drawback, since they have to learn your way of doings things.
What type of application are you developing?
Is it strictly ASP .NET, or do you plan to have backend, that runs in windows?
Are you using a separate database for you application?
You need to consider security/roles etc and how they relate to your app and syncing your user tables with the dnn user tables.
Regards
ray
|
| Alex786 | Asp.Net User |
| Re: Data layer, one big one, or many small ones??? | 12/5/2005 1:58:06 PM |
0 | |
|
swonderme wrote: I'm building a single, large-scale application in DNN that will contain multiple modules (probably 30 to 40) and it's own data model. Basically, I'm using DNN as my application architecture to take advantage of it's security model, content management, look and feel, dynamic page creation, etc... I'm new to DNN, but have been programming in vb, c#, and other languages for a long time.
It seems that each DNN module has it's own data layer that handles its one or maybe two tables. Since I'm building a complete application, each of my modules will focus on at least of couple of tables from my data model, but all will at least refernce other tables as well. In addition I may have some complicated modules that may use many, many tables from my data model.
What's the best way to approach this? Should I create a little tiny data layer for each module that just deals with the specific tables that a particular module deals with, or should I create one data layer project containing all my tables and just reference that one project in each module? If I do that (one data layer) will it work, and how would I go about it exactly? Just create a project (or a solution?), build my data layer code, compile it, and reference that one project in each module?
I know that most modules just have their own data layer, but how does the core handle this? I assume they have one data layer with every table in it? And then each core programmer just references that single data layer?
Any of you folks that have built an application that spans many, many modules and has one large data model.....how did you handle your data layer? One big one or many smal ones? It seems like for my situation one data layer is the way to go, but I'd love to hear how other people have done this, and I'd love to see a quick example or verbal walk through if any would care to help me out. I'll give back as I get rolling on this project as I discover and write new and useful tools.
Or, if there's anything I'm missing or if I am coming at this from the wrong angle, please let me know.
Thanks all.
Dear all
I've got similar situation. Impressed with DNN and still learning it as to how it can be extended (may be, DNN for entrprise-like functionalities - ERPs, SCMs, and CRMs).
Here's what I am envisioning (and would like all PROs in this group to please comment, guide and share their experiences):
Use DNN framework and leverage it's core to build ERP like functional modules (say financials, pruchasing, mfg etc.)
Questions:
1: Has anyone in DNN community has done any similar work yet?
2: If Yes, what's your experience?
3: How DNN can be extended for big DALs and extended ERP-like functionalities that are usually not seen other than ERPs (flexible atchitecture, dynamic data access etc.)
3: If No, should I consider that DNN is only a good CMS and should not be considered to extend or interfaced with ERP-like functionalities?
Any of your comments will be really of great help!
Best regards
Alex
|
| swonderme | Asp.Net User |
| Re: Data layer, one big one, or many small ones??? | 12/5/2005 6:52:39 PM |
0 | |
|
The software I am building is along the lines of an ERP system.
It's not something I'm going to be selling as modules or anything like
that. It's an application that I'm building for a customer, and
I've always built a DNN type system to run my applications in.
The problem is, my system is out of date now, I wrote it in 98 using
Cold Fusion. Well, to my delight, I found DNN which follows the
same principles that I had used in my application architecture in the
past.
Basically, I would like to use DNN as the web archiecture for my
software development. Although browser-based, it's not something like a
portal that will be
available to anyone on the net. It's a specific app, for a
specific
customer, delivered to them in a browser. The nice thing
about DNN, is that I can use the skinds and security roles and all
that, no need to re-invent the wheel. In addition, I can deliver
to my customer some intranet style applications.
The problem with the current DNN modules is that they seem to
focus on a table at a time. I'm building a enterprise style app,
that needs to have a robust back-end with easy to use hooks for table
relationhips, etc.. So, I'd like to create one DAL, and use it
across many modules. So far, I haven't seen any reason why I
can't do that, I was just wondering if any one else had done it and run
into any gotcha's.
|
| Alex786 | Asp.Net User |
| Re: Data layer, one big one, or many small ones??? | 12/6/2005 6:12:41 AM |
0 | |
|
Dear swonderme
Thanks for your reply.
One thing, we are on the same boat and need more directions from DotNetNuker.
Also, the points you quoted are very valid (especially if one attempts to create an enterprise like app). You have cold fusion background whereas I have Oracle ERP background (and DARE to envision much can be acomplished using DNN for similar ERP like functionality).
Suggesstion, why don't we make it as a seperate (a fresh thread) to this forum with some subject "ERP Like custom module" to get feedback over it. This is important.
If LAMP techies can come up with hundreds of enterpise like OSS apps like SugarCRM, compeire, etc. etc. why can't WE using DNN? and effective DAL is one of the many important tech. foundations one needs to consider.
Regards
Alex |
| DBuckner | Asp.Net User |
| Re: Data layer, one big one, or many small ones??? | 12/16/2005 3:30:19 AM |
0 | |
|
I am working on a suite of modules that all share one DAL. My reasoning behind this is some of my modules need info from other modules that are related. I didn't want to have dependencies on multiple other modules data layers so I chose this approach. The only gotcha I have had is sometimes Visual Studio likes to lock the main DLL. Changing to debug, then back to release mode fixes this though. Other then that, I have not had any issues with this approach. Currently there is 20 modules using this main DAL.
Dave |
| BKdotNet | Asp.Net User |
| Re: Data layer, one big one, or many small ones??? | 12/20/2005 2:32:24 AM |
0 | |
|
We are also starting down this path with our architecture. Being more SOA based, we have more options when it comes to one, many, or a combination of both. The reality of the situation in our realm is we typically deal with one significant object type per customer, say a loan application. That loan application class would have all sorts of properties of various custom types, like a borrower, or if a home mortgage, a seller, or if a student loan a school.
Our "DAL" is multi-faceted. From a DNN perspective, we're currently considering a common Web Service data provider which wraps the calls the UI would need to make to the web service, as well as the web reference to the web service. The UI would call into the Web Service data provider, which would call the web service, which has its own DAL and assorted classes for working with and storing data.
So to visualize, it'd go something like....
DNN
----- Custom Module
----------Web Service Data Provider
---------------- Web Service
---------------------- DAL and Class Library
----------------------------- SQL Server / Data
Hope this helps. You've got some good thoughts there to get you on your way. I hope this example of an outside-of-the-box model gives you some perspective on the possibilities.
-Bill
Bill Knaus Blog: http://life.billknaus.com/blogs/ymmv/Website: http://billknaus.com/ |
| DBuckner | Asp.Net User |
| Re: Data layer, one big one, or many small ones??? | 12/20/2005 7:45:34 PM |
0 | |
|
Bill,
I would be interested in hearing of the preformance of this approach. I have also thought of trying an idea like this for some things, but time has keep me from trying this out.
Dave |
|
| |
Free Download:
Books: Client/server Strategies: A Survival Guide for Corporate Reengineers Authors: David Vaskevitch, Pages: 460, Published: 1993 Computer Analysis of Images and Patterns: 5th International Conference, CAIP '93, Budapest, Hungary, September 13-15, 1993 : Proceedings Authors: Dmitrij Csetverikov, Walter Kropatsch, Pages: 857, Published: 1993 Newton's Telecom Dictionary: Covering Telecommunications, Networking, Information Technologies, Wired, Wireless, Satellites, Fiber and the Internet Authors: Harry Newton, Pages: 1035, Published: 2006 Building a Data Warehouse: With Examples in SQL Server: With Examples in SQL Server Authors: Vincent Rainardi, Pages: 523, Published: 2007 Everything You Ever Wanted to Know about DVD: The Official DVD FAQ Authors: Jim Taylor, Pages: 225, Published: 2003 IJCNN '93 - Nagoya: Proceedings of 1993 International Joint Conference on Neural Networks, Nagoya Congress Center, October 25-29, 1993, Japan Authors: IEEE Neural Networks Council, IEEE Neural networks society, International Neural Network Society, Japanese Neural Network Society, Shinkei Kairo Gakkai Jimukyoku, Shinkei Kairo Gakkai Jimukyoku, International Neural Network Society, Pages: 3000, Published: 1993 Inside Dreamweaver MX Authors: Laura Gutman, Patricia J. Ayers, Patty Ayers, Patricia J. Ayres, Donald S. Booth, Pages: 1301, Published: 2002 Understanding Linux Network Internals Authors: Christian Benvenuti, Pages: 1035, Published: 2005 Web:Raible Designs | One big Service class or several small classes? I think AppFuse has 2 main ones: manage users & upload file), so 2 managers should suffice. .... Make a service layer use more than one data layer. ... Layer 1 Transport It is a message forwarding "relay race" like system in which data packets, called frames, are passed from one or many start-points to one or many ... Packet Frame Grouping One of its main characteristics is that it very often uses small data ... the scheme can group a small packet with a big one (or many small ones) and the ... Force distribution analysis in loaded planar disc systems by means ... ... to the larger number of small discs. At the lower border of the middle layer one can observe ... surrounded by many small ones. The discs are assembled ... The “Millipede”—More than one thousand tips for future AFM data ... In addition, terabit data capacity can be achieved by one large array, by many identical small ones operating in parallel, or by displacing a small array on ... Earthquake Facts & Earthquake Fantasy So, even though we always record many more small events than large ones, .... Everyone will panic during the Big One. FICTION: A common belief is that ... EcontentMag.com: Does Size Matter? CMS Big and Small Apr 4, 2006 ... What are the differences between the Big CMS and the Small ones; ... You need only get an ISP who also runs one of dozens of open-source ... Cost of disks, blue ray or HD DVD, for data storage? Any good ... Right now times are hard for lots of businesses and many closing up, not every- one does E-bay LOL. I am also watching for small DVD rental ... Enterprise Java Community: Hibernate vs. Rails: The Persistence ... As a comparative example, lets look at the many to one relationship. .... Better 1 big query than a few small ones. Hibernate has a number ways its handles ... Jupiter Jupiter has 63 known satellites (as of Feb 2004): the four large Galilean moons plus many more small ones some of which have not yet been named: ... Videos: Scrum et al. Google Tech Talks
September 5, 2006
Ken Schwaber co-developed the Agile process, Scrum. He is a founder of the Agile Alliance and Scrum Alliance, an... A New Way to look at Networking Google Tech Talks
August 30, 2006
Van Jacobson is a Research Fellow at PARC. Prior to that he was Chief Scientist and co-founder of Packet Design. P... Distributed continuous quality assurance Google London Test Automation Conference (LTAC)
Google Tech Talks
September 8th, 2006
Presenter:
Adam Porter Lec 23 | MIT 3.091 Introduction to Solid State Chemistry Diffusion: Fick's First Law and Steady-state Diffusion, Dependence of the Diffusion Coefficient on Temperature and on Atomic Arrangement
View the co... Zero Configuration networking with Bonjour Google TechTalks
November 2, 2005
Dr. Stuart Cheshire, Apple Computer
http://www.stuartcheshire.org/
ABSTRACT
The desirability of making IP networ... django: Web Development for Perfectionists with Deadlines Google TechTalks
April 26, 2006
Jacob Kaplan-Moss
ABSTRACT
Django is one of the premier web frameworks for Python, and is often compared to Ruby-on... SpaceVidcast Episode 005 - 04/24/2008 Hawking calls on NASA to push onward, NASA nanosats, INdia launches a satellite but we're not sure if it matters and stp global warming in the news t... |
|
|
|