To make Baasic more accessible to .NET developers, we have been working on Baasic .NET SDK for a while now. As always, we would like to hear from you in order to make it even better, and that’s why we have released the alpha version, which is available on GitHub.
Architecture
SDK is built as PCL so that it can be used inside frameworks like Xamarin. To abstract binding definitions and make switching between DI containers possible, a simple dependency injection container has been built-in. Some of the popular DI containers already have an implementation in place, while other will come soon. If you plan to use the SDK inside the ASP.NET Web application, you need to install Baasic Client WebHost to automatically setup Baasic token handling and similar features. Another important thing to mention is that every Baasic model can be easily extended - all you need to do is inherit from existing model, add your properties and save that model using the generic method of a Baasic Client.
What’s included in the alpha version
- NuGets
- Baasic .NET SDK Common
- Baasic .NET SDK Models
- Baasic .Net SDK
- Baasic.Client.Ninject
- Baasic.Client.WebHost
- Modules
- Core communication
- Membership & Security
- Key Value & Value Set module
- Dynamic Resource module
- Article module
- Profile module
- Coming soon
- Notification module
- Templating module
- Metering module
- Media Vault & Files module
- AutoFac integration
- SimpleInjector integration
Configuration
To start using Baasic .NET SDK, it needs to be initialized using ClientConfiguration with the following code:
/// <summary>
/// Dependency Injection Module containing Baasic Client bindings.
/// </summary>
public class AppClientConfiguration : ClientConfiguration
{
#region Fields
private const string apiKey = "<api-key>";
#endregion Fields
#region Constructors
/// <summary>
/// Initializes a new instance of the <see cref="AppClientConfiguration" /> class.
/// </summary>
/// <param name="tokenHandler">The token handler.</param>
public AppClientConfiguration(ITokenHandler tokenHandler)
: base(apiKey, tokenHandler)
{
}
#endregion Constructors
}
...
/// <summary>
/// Dependency Injection Module containing Baasic Client bindings.
/// </summary>
public partial class DIModule : IDIModule
{
#region Methods
/// <summary>
/// Load dependency injection bindings.
/// </summary>
/// <param name="dependencyResolver"></param>
public virtual void Load(IDependencyResolver dependencyResolver)
{
#region Configuration
dependencyResolver.Register<Baasic.Client.Configuration.IClientConfiguration, AppClientConfiguration>();
#endregion Configuration
}
#endregion Methods
}
To get more information about the configuration, please visit Baasic Developer Center or GitHub repository baasic-sdk-net.
Get in touch
Get in touch and help us in our mission of making things easy. Your feedback will be greatly appreciated and will make Baasic even more awesome!
Feel free to leave a comment
comments powered by Disqus