Giter VIP home page Giter VIP logo

Comments (4)

nbarnwell avatar nbarnwell commented on July 2, 2024

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.

kendallmiller avatar kendallmiller commented on July 2, 2024

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.

Lethrir avatar Lethrir commented on July 2, 2024

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.

stack72 avatar stack72 commented on July 2, 2024

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.