Implement the service layer with Ninject
The service layer holds the domain model logic and works with the Sitefinity CMS managers. The services may also have business logic depending on the level of the separation of concerns you want to achieve.
Implement the service layer
-
Create a new interface
IHelloSitefinityServicethat has one method that returns a string with the signaturestring SayHello():C#namespace SitefinityWebApp.Custom.Services { public interface IHelloSitefinityService { string SayHello(); } } -
Create the
HelloSitefinityServiceclass which holds the logic of the methods:C#namespace SitefinityWebApp.Custom.Services { public class HelloSitefinityService : IHelloSitefinityService { public string SayHello() { return "Hello, Sitefinity!"; } } }
As a result, the method displays the following text: Hello, Sitefinity!
Bind the interface to the service
The following code example demonstrates how to bind the interface to its implementation using Ninject-specific syntax:
C#
using Ninject.Modules;
using Ninject.Web.Common;
using SitefinityWebApp.Custom.Services;
namespace SitefinityWebApp
{
public class InterfaceMappings : NinjectModule
{
public override void Load()
{
this.Bind<IHelloSitefinityService>().To<HelloSitefinityService>();
}
}
}
As a result, after your build the project, the bindings are automatically registered in the Ninject kernel.
Want to learn more?
Enhance your Sitefinity skills by enrolling in free training sessions. Become Sitefinity certified through Progress Education Community to strengthen your professional credentials.
Get started with Integration Hub | Sitefinity Cloud
This free lesson teaches administrators, marketers, and other business professionals how to use Sitefinity Integration Hub to create automated workflows between Sitefinity and other business systems.
Web Security for Sitefinity Administrators
This free lesson teaches administrators the basics about protecting your Sitefinity instance and your sites from external threats. Configure HTTPS, SSL, allow lists for trusted sites, and cookie security, among others.
Foundations of Sitefinity ASP.NET Core Development
The free on-demand video course teaches developers how to use Sitefinity ASP.NET Core and take advantage of its decoupled architecture and modern development model.