Comments (4)
Yes, our controllers need to go on a diet. We have IoC and a Services namespace for this, we just need to move the appropriate amount of that stuff out into those services. They're auto-wired so if you put "IMyFunkyNewService" as a ctor arg of a controller, it will automatically make sure that the MyFunkyNewService concrete instance is passed-in.
from givecrm.
This is one of those points where there is a bit of complexity we need to manage.as we go about this. There are many databases (conceptually) - one for each charity. So we need to have it be super-easy and obvious when writing the modules how to get the current charity database and very hard to get the wrong one. This is so we can have multi-tennant application instances and be very confident we're never cross-connecting the data.
The central database needs to know all of the instances so it can redirect traffic to the right places (and provision/remove databases)
from givecrm.
Hi Paul,
I have to confess that in the dying minutes I could get a hold of the 'I can change the proj file' pill / batton so I had to add a db ref into the QuickDonate view as I couldn't add a ViewModel file... Please don't shoot me but it might want fixing while you're at it...
Cheers,
Kim.
On 24 Oct 2011, at 15:41, Paul Stack wrote:
Hey guys
there is a large dependency on the DataAccess layer throughout the campaign controller. This is caused by a new instance of the DataAccess layer being called in a lot of methods in this way:
Campaigns db = new Campaigns();
Campaign savedCampaign = db.Insert(campaign);
return savedCampaign.Id;We really need to get this moved out of the Controller
I think this would be a big milestone for Separation of Concerns
Paul
Reply to this email directly or view it on GitHub:
#3
from givecrm.
I agree Kendall - we need to be able to handle this correctly - I am working on separating the layers for now for cleanliness - that way we can work efficiently on the multi tennant aspect of the project :)
Kim dont worry - it needs to be shipped :)
Neil I have been working under that assumption all morning ;)
from givecrm.
Related Issues (20)
- Admin: Terms and Conditions page HOT 1
- Admin: Password validation HOT 1
- Admin: Browser detection HOT 1
- CRM: Browser detection HOT 1
- Admin: Provision the site HOT 1
- Admin: Validate password strength HOT 1
- Admin: Prettify common UI framework HOT 1
- Admin: Style sign up form HOT 2
- CRM: Validation
- CRM: CRUD actions to maintain "facets" HOT 1
- CRM: Paging of Search Results HOT 1
- CRM: Add facet values to a Member
- Admin: Activation HOT 1
- CRM: ASP.NET page compile error on donations page HOT 2
- Data Generator: generate better campaigns HOT 3
- "Show Campaign" should be read-only for committed/closed campaigns
- Error activating IExcelImportService from Import Excel Spreadsheet
- Error when searching for members of a campaign run HOT 3
- Excel Importer can only handle Excel 97-2003 files
- An Excel Importer test is failing in the finalizer
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from givecrm.