Sitecore helix pattern and where to place your business logic

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
2
down vote

favorite












I've a new sitecore helix project and currently I am a bit unsure where I can place my business logic?



  • currently I think I need to extract the business logic into some external services is that the "right" approach or do you host the business in your sitecore project?









share|improve this question

























    up vote
    2
    down vote

    favorite












    I've a new sitecore helix project and currently I am a bit unsure where I can place my business logic?



    • currently I think I need to extract the business logic into some external services is that the "right" approach or do you host the business in your sitecore project?









    share|improve this question























      up vote
      2
      down vote

      favorite









      up vote
      2
      down vote

      favorite











      I've a new sitecore helix project and currently I am a bit unsure where I can place my business logic?



      • currently I think I need to extract the business logic into some external services is that the "right" approach or do you host the business in your sitecore project?









      share|improve this question













      I've a new sitecore helix project and currently I am a bit unsure where I can place my business logic?



      • currently I think I need to extract the business logic into some external services is that the "right" approach or do you host the business in your sitecore project?






      helix






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 1 hour ago









      squadwuschel

      3349




      3349




















          2 Answers
          2






          active

          oldest

          votes

















          up vote
          2
          down vote













          Put your business logic into a Feature or Foundation layer of your solution.
          For example, if you have a business logic for your Website's Newsletter, then crate a Feature.Newsletter project and Foundation.Newsletter (if needed) and put your logic there. You can put all your services, views, controllers etc into feature project.






          share|improve this answer



























            up vote
            1
            down vote













            First of; there is no single "Sitecore Project". There is your solution, and that's what Helix addresses.



            As to where to place "business logic" - you use a generic term, when a specific one is required. Helix advocates breaking things down into logical groupings (modules). So if you were to say, develop some Newsletter functionality (as mentioned in another answer here) - that would logically group into a "Newsletter" feature.



            This feature would (maybe) be a single project. Inside that you would have your view files, your controller renderings and so on. But you would also have your INewsletterService or whatever else information structure your newsletter is built upon.



            It's also likely that, if not now then later, some of that newsletter functionality would be pushed down into the Foundation layer. Like the actual mechanics of sending a mail, for instance - which could have uses elsewhere in your solution. Like sending a registration confirmation mail or whatever it may be.



            So you group related stuff together, that's (you know... simplified) what Helix is about.






            share|improve this answer




















              Your Answer








              StackExchange.ready(function()
              var channelOptions =
              tags: "".split(" "),
              id: "664"
              ;
              initTagRenderer("".split(" "), "".split(" "), channelOptions);

              StackExchange.using("externalEditor", function()
              // Have to fire editor after snippets, if snippets enabled
              if (StackExchange.settings.snippets.snippetsEnabled)
              StackExchange.using("snippets", function()
              createEditor();
              );

              else
              createEditor();

              );

              function createEditor()
              StackExchange.prepareEditor(
              heartbeatType: 'answer',
              convertImagesToLinks: false,
              noModals: true,
              showLowRepImageUploadWarning: true,
              reputationToPostImages: null,
              bindNavPrevention: true,
              postfix: "",
              imageUploader:
              brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
              contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
              allowUrls: true
              ,
              onDemand: true,
              discardSelector: ".discard-answer"
              ,immediatelyShowMarkdownHelp:true
              );



              );













               

              draft saved


              draft discarded


















              StackExchange.ready(
              function ()
              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsitecore.stackexchange.com%2fquestions%2f14762%2fsitecore-helix-pattern-and-where-to-place-your-business-logic%23new-answer', 'question_page');

              );

              Post as a guest






























              2 Answers
              2






              active

              oldest

              votes








              2 Answers
              2






              active

              oldest

              votes









              active

              oldest

              votes






              active

              oldest

              votes








              up vote
              2
              down vote













              Put your business logic into a Feature or Foundation layer of your solution.
              For example, if you have a business logic for your Website's Newsletter, then crate a Feature.Newsletter project and Foundation.Newsletter (if needed) and put your logic there. You can put all your services, views, controllers etc into feature project.






              share|improve this answer
























                up vote
                2
                down vote













                Put your business logic into a Feature or Foundation layer of your solution.
                For example, if you have a business logic for your Website's Newsletter, then crate a Feature.Newsletter project and Foundation.Newsletter (if needed) and put your logic there. You can put all your services, views, controllers etc into feature project.






                share|improve this answer






















                  up vote
                  2
                  down vote










                  up vote
                  2
                  down vote









                  Put your business logic into a Feature or Foundation layer of your solution.
                  For example, if you have a business logic for your Website's Newsletter, then crate a Feature.Newsletter project and Foundation.Newsletter (if needed) and put your logic there. You can put all your services, views, controllers etc into feature project.






                  share|improve this answer












                  Put your business logic into a Feature or Foundation layer of your solution.
                  For example, if you have a business logic for your Website's Newsletter, then crate a Feature.Newsletter project and Foundation.Newsletter (if needed) and put your logic there. You can put all your services, views, controllers etc into feature project.







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered 1 hour ago









                  Bartłomiej Mucha

                  692215




                  692215




















                      up vote
                      1
                      down vote













                      First of; there is no single "Sitecore Project". There is your solution, and that's what Helix addresses.



                      As to where to place "business logic" - you use a generic term, when a specific one is required. Helix advocates breaking things down into logical groupings (modules). So if you were to say, develop some Newsletter functionality (as mentioned in another answer here) - that would logically group into a "Newsletter" feature.



                      This feature would (maybe) be a single project. Inside that you would have your view files, your controller renderings and so on. But you would also have your INewsletterService or whatever else information structure your newsletter is built upon.



                      It's also likely that, if not now then later, some of that newsletter functionality would be pushed down into the Foundation layer. Like the actual mechanics of sending a mail, for instance - which could have uses elsewhere in your solution. Like sending a registration confirmation mail or whatever it may be.



                      So you group related stuff together, that's (you know... simplified) what Helix is about.






                      share|improve this answer
























                        up vote
                        1
                        down vote













                        First of; there is no single "Sitecore Project". There is your solution, and that's what Helix addresses.



                        As to where to place "business logic" - you use a generic term, when a specific one is required. Helix advocates breaking things down into logical groupings (modules). So if you were to say, develop some Newsletter functionality (as mentioned in another answer here) - that would logically group into a "Newsletter" feature.



                        This feature would (maybe) be a single project. Inside that you would have your view files, your controller renderings and so on. But you would also have your INewsletterService or whatever else information structure your newsletter is built upon.



                        It's also likely that, if not now then later, some of that newsletter functionality would be pushed down into the Foundation layer. Like the actual mechanics of sending a mail, for instance - which could have uses elsewhere in your solution. Like sending a registration confirmation mail or whatever it may be.



                        So you group related stuff together, that's (you know... simplified) what Helix is about.






                        share|improve this answer






















                          up vote
                          1
                          down vote










                          up vote
                          1
                          down vote









                          First of; there is no single "Sitecore Project". There is your solution, and that's what Helix addresses.



                          As to where to place "business logic" - you use a generic term, when a specific one is required. Helix advocates breaking things down into logical groupings (modules). So if you were to say, develop some Newsletter functionality (as mentioned in another answer here) - that would logically group into a "Newsletter" feature.



                          This feature would (maybe) be a single project. Inside that you would have your view files, your controller renderings and so on. But you would also have your INewsletterService or whatever else information structure your newsletter is built upon.



                          It's also likely that, if not now then later, some of that newsletter functionality would be pushed down into the Foundation layer. Like the actual mechanics of sending a mail, for instance - which could have uses elsewhere in your solution. Like sending a registration confirmation mail or whatever it may be.



                          So you group related stuff together, that's (you know... simplified) what Helix is about.






                          share|improve this answer












                          First of; there is no single "Sitecore Project". There is your solution, and that's what Helix addresses.



                          As to where to place "business logic" - you use a generic term, when a specific one is required. Helix advocates breaking things down into logical groupings (modules). So if you were to say, develop some Newsletter functionality (as mentioned in another answer here) - that would logically group into a "Newsletter" feature.



                          This feature would (maybe) be a single project. Inside that you would have your view files, your controller renderings and so on. But you would also have your INewsletterService or whatever else information structure your newsletter is built upon.



                          It's also likely that, if not now then later, some of that newsletter functionality would be pushed down into the Foundation layer. Like the actual mechanics of sending a mail, for instance - which could have uses elsewhere in your solution. Like sending a registration confirmation mail or whatever it may be.



                          So you group related stuff together, that's (you know... simplified) what Helix is about.







                          share|improve this answer












                          share|improve this answer



                          share|improve this answer










                          answered 19 mins ago









                          Mark Cassidy♦

                          16k43178




                          16k43178



























                               

                              draft saved


                              draft discarded















































                               


                              draft saved


                              draft discarded














                              StackExchange.ready(
                              function ()
                              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsitecore.stackexchange.com%2fquestions%2f14762%2fsitecore-helix-pattern-and-where-to-place-your-business-logic%23new-answer', 'question_page');

                              );

                              Post as a guest













































































                              Comments

                              Popular posts from this blog

                              What does second last employer means? [closed]

                              List of Gilmore Girls characters

                              Confectionery