![]() |
VOOZH | about |
dotnet add package RelationshipsExtended --version 13.0.11
NuGet\Install-Package RelationshipsExtended -Version 13.0.11
<PackageReference Include="RelationshipsExtended" Version="13.0.11" />
<PackageVersion Include="RelationshipsExtended" Version="13.0.11" />Directory.Packages.props
<PackageReference Include="RelationshipsExtended" />Project file
paket add RelationshipsExtended --version 13.0.11
#r "nuget: RelationshipsExtended, 13.0.11"
#:package RelationshipsExtended@13.0.11
#addin nuget:?package=RelationshipsExtended&version=13.0.11Install as a Cake Addin
#tool nuget:?package=RelationshipsExtended&version=13.0.11Install as a Cake Tool
Relationships Extended Module for Kentico This tool extends Kentico by allowing support and management tools for 6 Relationship scenarios:
If you are using Kentico 12 MVC or Kentico 13 MVC (.Net or .Net Core) you should also install the RelationshipsExtended.MVC.Standard for Kentico 13, or RelationshipsExtendedMVCHelper for Kentico 12 NuGet package.
Lastly hook up RelationshipsExtendedHelper as the implementation for IRelationshipsExtendedHelper.
For MVC.Net Core, add to the Startup.cs's ConfigureServices
services.AddSingleton(typeof(IRelationshipExtendedHelper), typeof(RelationshipsExtendedHelper));
For MVC.Net Framework, you will have to use your own IoC, such as AutoFac
// builder is of type ContainerBuilder
builder.RegisterType(typeof(RelationshipsExtendedHelper)).As(typeof(IRelationshipExtendedHelper));
This will provide you with TreeCategory, DocumentQuery/ObjectQuery extensions, and AdHoc relationship support and event hooks that the Admin (Mother) also contain, so any adjustments in code will also work properly with staging and such.
If you are new to the tool, you have two options for learning how to use this.
RelationshipsExtendedDemoModule.13.0.0.zip file to install the Demo module and it's UI elements.It is possible that during batch adjustments across multiple objects, that transactions can get locked, causing errors. It is recommended in this case to not log the synchronization task during the batch operations, and then manually trigger an update a staging event after if something was changed. Under normaly operations on single items
using(CMSActionContext context = new CMSActionContect() {
LogSynchronization = false
}) {
// Batch operation where multiple related objects are done
}
if(UpdateWasMade) {
// Tree node update
DocumentSynchronizationHelper.LogDocumentChange(new LogMultipleDocumentChangeSettings()
{
NodeAliasPath = AssetParent.NodeAliasPath,
CultureCode = AssetParent.DocumentCulture,
TaskType = TaskTypeEnum.UpdateDocument,
Tree = AssetParent.TreeProvider,
SiteName = AssetParent.NodeSiteName,
RunAsynchronously = false,
User = MembershipContext.AuthenticatedUser
});
// Object update
ParentObjectInfoProvider.Set(TheParentObject);
}
// In a global event hook
private void ParentCategories_Insert_Or_Delete_After(object sender, ObjectEventArgs e)
{
if (CMSActionContext.CurrentLogSynchronization)
{
RelHelper.HandleNodeBindingInsertUpdateDeleteEvent(((ParentCategoryInfo.TypesInfo)e.Object).refNodeID, ParentCategoryInfo.TypesInfo.OBJECT_TYPE);
}
}
The following Extension methods have been added to all ObjectQuery and DocumentQuery, see the project's readme for more info on usage. Except for InRelationWithOrder which is available in all versions, these are only in 13+
You can see some samples check this MVC Controller
Feel free to Fork and submit pull requests to contribute.
You can submit bugs through the issue list and i will get to them as soon as i can, unless you want to fix it yourself and submit a pull request!
This is free to use and modify!
Can be used on any Kentico 10.0.52, 11.0.48+, and Kentico 12 SP site (hotfix 29 or above), and Kentico 13.0.0
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET Framework | net net is compatible. |
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
Updated to reference KX13.0.13 and above to fix assembly reference issues