27
votes
Accepted
Best approach for Dependency Injection in Sitecore 8.2
There are three aspects in choosing a DI approach with Sitecore 8.2:
The decision of which dependency injection container to use.
The way you integrate the container with Sitecore and ASP.NET MVC.
...
23
votes
Accepted
How do you create a site modeled after the Habitat solution when starting from scratch?
Habitat is intended to inspire your solutions; you should never start with the Habitat solution and add to it when creating a new site. Habitat is not an accelerator, it is an example of the Helix ...
22
votes
Accepted
Should Habitat be used as a starter kit?
A Resounding No
Think of Sitecore Habitat as the result of an assess and plan project phase where requirements and business objectives were already described for a ficticous client and developed.
...
21
votes
Accepted
How to package a Helix solution using powershell
You might want to consider psake. It is a task based build system written in Powershell.
A good starting point would be this piece of code:
# Let's define layers here
$layers = @( "Foundation", "...
21
votes
Sitecore Helix/Habitat and Visual Studio structure
From a architectural point of view there is no reason not to have everything in a single project. This will certainly make load and build times quicker - if that is the aim.
The reason for splitting ...
15
votes
Best approach for Dependency Injection in Sitecore 8.2
I'm not entirely sure there is a "recommended" approach - it mostly boils down to the container you'd like to use and the features you'd like to leverage from that container.
For instance, if you ...
15
votes
Accepted
How or where should I add a required connection string for a feature in Helix?
You would need to use an XmlTransform to do this. If you look at the Habitat demo site you can see examples of how to do this.
Creating the transform file
You would add your connection string to a ...
14
votes
Should Habitat be used as a starter kit?
Every single answer you will receive will be a no, Habitat is not mean to be used as a starter kit. Unless of course your client wanted a website that was exactly like the Habitat (standard, legal or ...
12
votes
Accepted
Publishing projects fails because of locked files
As asked in comments above; normally /bin files should not be locked for any particular reason (other than when the site is just starting up) - so I'm not entirely sure what's going on.
I can help ...
11
votes
Accepted
Helix Best Practice when developing components for the Marketplace
Although the Helix documentation does cover this, I guess it's a big pill to swallow all at once so here are a few simple guidelines to help you on the Helix path:
Foundation module
This acts as an ...
11
votes
Accepted
Is there any way to avoid duplicated TDS files/items in Helix based solution?
TDS always serializes data from the root item, there are no settings that allow you to only serialise a part of a tree. Logically speaking, this makes a lot of sense for a Helix based solution where ...
10
votes
Accepted
Helix deployment - How to use msdeploy
We don't have a single package, but a package for each web project. Every web project has its publishing profile set to Web Deploy Package and the Package location is set to a unique zip filename in a ...
10
votes
When using Gulp to build a Helix based solution, what does "MSBuild failed with code 1" mean?
I'm also going through the Professional Sitecore 8 Development book and ran into the same issue. Not sure if you found the fix but thought I'd share my findings. I'm using Visual Studio 2017 ...
10
votes
Does Helix work with Azure Web Apps?
Helix is just an software architecture pattern, it has nothing to do with how should be deployed. Your statement
Since by default Azure Web Apps needs VS to do the deployment
is not true. My ...
10
votes
Accepted
Can HelixBase solution be used as a base solution for a brand new Sitecore project?
If you read the readme.md on the HelixBase github account, that seems to be exactly what it is for:
A Sitecore Helix based solution which can be used for Greenfield projects. Tackles some common ...
9
votes
Accepted
Sitecore Habitat with Glass Mapper
You can put it to the Foundation layer. Any project in any layer can have references to the Foundation layer. Also, a Foundation project can have references to another Foundation project, but you need ...
9
votes
How to handle alternative presentation for a helix Feature module
You can make use of MVC Areas (support for which was introduced in Sitecore 8.1).
There are a number of strategies OOTB for resolving the area of a site, such as resolving by rendering parameters or ...
9
votes
Accepted
TDS: Sync Project with Sitecore for entire solution
TDS Classic 5.7 (released after this question was initially posted) now has a 'Sync all projects with Sitecore' feature. This is a context menu option on the solution (under the Team Development for ...
9
votes
Helix Feature references to Feature(s)
That blog post from Alan covers the scenarios nicely. The problem is that you are looking for Feature to Feature dependencies and if you follow Helix guidelines, that is expressly forbidden:
A strict ...
9
votes
Sitecore helix pattern and where to place your business logic
I would say it all depends on the complexity of your domain. If the amount of business logic and 3-rd party integrations is low, it might be enough to keep the code in the appropriate Feature/...
9
votes
Accepted
Automatically create data source's for controls when user adds page from experience editor
What you want to do is take advantage of Sitecore's branching functionality. A branch in Sitecore is basically a prebuilt item tree that will be copied and inserted where you want it. It could be one ...
9
votes
Accepted
Can we use helix principle into JSS application?
You can certainly follow Helix principles with JSS.
Helix modules will contain less code, due to the fact that Sitecore JSS does a lot of item manipulation work for us. This decreases the value of ...
8
votes
How do you create a site modeled after the Habitat solution when starting from scratch?
As mention in @Anicho's comment, you should start by looking at helix.sitecore.net to get you started with understanding the modular architecture pattern and principles that Habitat was built around.
...
8
votes
Accepted
How to use a Helix feature for multiple sites with specific template source settings per site?
You're going about it wrong. Or - I should say - not in accordance with Helix principles.
First and foremost, your idea of a common base template to be used on all websites is not recommended ...
8
votes
Migrating legacy solution with 10 sites, to Helix architecture
Others have recommended that you hold off, which is good advice. However, this is how I would start to go about doing it anyway if I had to.
The Plan
First off, you need a plan. Just diving right in ...
8
votes
Accepted
In which layer, Are we suppose to place custom repository or data layers or external services interface?
If it's used by a single feature, I would say it should be defined in that feature.
If it's used a by number of features, then a Foundation module is probably more appropriate.
8
votes
Accepted
Habitat multisite solution structure example
When I was setting up our project layer based upon the Helix architecture principles for the project layer, this bit stood out to me:
Typically, in a single tenant solution there will only be a ...
8
votes
Accepted
How to Connect controller rendering with Interface Template
The fix
You need to specify a template in the Datasource Template field of your controller rendering. This is the field that tells Sitecore to prompt an editor to select a data source when adding a ...
8
votes
Accepted
Sitecore helix pattern and where to place your business logic
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 ...
8
votes
Patching custom database EF database first connection String in sitecore
You can install SlowCheetah in your application, you can find link from here
After the installation you need to click Add Transform which will transform connection string config according to your ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
helix × 132habitat × 11
unicorn × 9
tds × 8
solution-architecture × 8
visual-studio × 7
deployment × 6
jss × 5
gulp × 5
sxa × 4
presentation × 4
mvc × 4
best-practices × 4
docker × 4
dependency-injection × 4
nuget × 4
information-architecture × 4
configuration × 3
glass-mapper × 3
templates × 3
multisite × 3
continuous-integration × 3
sitecore-commerce × 2
experience-editor × 2
azure × 2