diff --git a/Oqtane.Client/Modules/Admin/ModuleCreator/Templates/External/Client/Index.razor b/Oqtane.Client/Modules/Admin/ModuleCreator/Templates/External/Client/Index.razor
index df16458b..111e69ab 100644
--- a/Oqtane.Client/Modules/Admin/ModuleCreator/Templates/External/Client/Index.razor
+++ b/Oqtane.Client/Modules/Admin/ModuleCreator/Templates/External/Client/Index.razor
@@ -61,8 +61,8 @@ else
- Repository\I[Module]Repository.cs - interface for defining repository methods
- Repository\[Module]Respository.cs - implements repository interface methods for data access using EF Core
- Repository\[Module]Context.cs - provides a DB Context for data access
-- Scripts\[Owner].[Module].1.0.0.sql - database schema definition script
-- Scripts\[Owner].[Module].Uninstall.sql - database uninstall script
+- Scripts\[Owner].[Module]s.1.0.0.sql - database schema definition script
+- Scripts\[Owner].[Module]s.Uninstall.sql - database uninstall script
[RootPath]Shared\
- [Owner].[Module]s.csproj - shared project
- Models\[Module].cs - model definition
diff --git a/Oqtane.Client/Modules/Admin/ModuleCreator/Templates/Internal/Oqtane.Client/Modules/[Module]/Index.razor b/Oqtane.Client/Modules/Admin/ModuleCreator/Templates/Internal/Oqtane.Client/Modules/[Module]/Index.razor
index 0656cb80..b683abf4 100644
--- a/Oqtane.Client/Modules/Admin/ModuleCreator/Templates/Internal/Oqtane.Client/Modules/[Module]/Index.razor
+++ b/Oqtane.Client/Modules/Admin/ModuleCreator/Templates/Internal/Oqtane.Client/Modules/[Module]/Index.razor
@@ -53,8 +53,8 @@ else
- Repository\I[Module]Repository.cs - interface for defining repository methods
- Repository\[Module]Respository.cs - implements repository interface methods for data access using EF Core
- Repository\[Module]Context.cs - provides a DB Context for data access
-- Scripts\[Owner].[Module].1.0.0.sql - database schema definition script
-- Scripts\[Owner].[Module].Uninstall.sql - database uninstall script
+- Scripts\[Owner].[Module]s.1.0.0.sql - database schema definition script
+- Scripts\[Owner].[Module]s.Uninstall.sql - database uninstall script
[RootPath]Oqtane.Shared\Modules\[Module]\
- Models\[Module].cs - model definition
diff --git a/Oqtane.Server/Controllers/ModuleDefinitionController.cs b/Oqtane.Server/Controllers/ModuleDefinitionController.cs
index d9131d69..039d6782 100644
--- a/Oqtane.Server/Controllers/ModuleDefinitionController.cs
+++ b/Oqtane.Server/Controllers/ModuleDefinitionController.cs
@@ -14,6 +14,8 @@ using Oqtane.Security;
using System;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Configuration;
+using System.Xml.Linq;
+using Microsoft.AspNetCore.Mvc.Formatters;
// ReSharper disable StringIndexOfIsCultureSpecific.1
namespace Oqtane.Controllers
@@ -208,13 +210,13 @@ namespace Oqtane.Controllers
if (moduleDefinition.Template == "internal")
{
rootPath = Utilities.PathCombine(rootFolder.FullName,"\\");
- moduleDefinition.ModuleDefinitionName = moduleDefinition.Owner + "." + moduleDefinition.Name + "s.Modules, Oqtane.Client";
+ moduleDefinition.ModuleDefinitionName = moduleDefinition.Owner + "." + moduleDefinition.Name + "s, Oqtane.Client";
moduleDefinition.ServerManagerType = moduleDefinition.Owner + "." + moduleDefinition.Name + "s.Manager." + moduleDefinition.Name + "Manager, Oqtane.Server";
}
else
{
rootPath = Utilities.PathCombine(rootFolder.Parent.FullName , moduleDefinition.Owner + "." + moduleDefinition.Name + "s","\\");
- moduleDefinition.ModuleDefinitionName = moduleDefinition.Owner + "." + moduleDefinition.Name + "s.Modules, " + moduleDefinition.Owner + "." + moduleDefinition.Name + "s.Client.Oqtane";
+ moduleDefinition.ModuleDefinitionName = moduleDefinition.Owner + "." + moduleDefinition.Name + "s, " + moduleDefinition.Owner + "." + moduleDefinition.Name + "s.Client.Oqtane";
moduleDefinition.ServerManagerType = moduleDefinition.Owner + "." + moduleDefinition.Name + "s.Manager." + moduleDefinition.Name + "Manager, " + moduleDefinition.Owner + "." + moduleDefinition.Name + "s.Server.Oqtane";
}
@@ -227,7 +229,11 @@ namespace Oqtane.Controllers
if (moduleDefinition.Template == "internal")
{
- // need logic to add embedded scripts to Oqtane.Server.csproj - also you need to remove them on uninstall
+ // add embedded resources to project
+ List resources = new List();
+ resources.Add(Utilities.PathCombine("Modules", moduleDefinition.Name, "Scripts", moduleDefinition.Owner + "." + moduleDefinition.Name + "s.1.0.0.sql"));
+ resources.Add(Utilities.PathCombine("Modules", moduleDefinition.Name, "Scripts", moduleDefinition.Owner + "." + moduleDefinition.Name + "s.Uninstall.sql"));
+ EmbedResourceFiles(Utilities.PathCombine(rootPath, "Oqtane.Server", "Oqtane.Server.csproj"), resources);
}
_installationManager.RestartApplication();
@@ -276,5 +282,19 @@ namespace Oqtane.Controllers
}
}
}
+
+ private void EmbedResourceFiles(string projectfile, List resources)
+ {
+ XDocument project = XDocument.Load(projectfile);
+ var itemGroup = project.Descendants("ItemGroup").Descendants("EmbeddedResource").FirstOrDefault().Parent;
+ if (itemGroup != null)
+ {
+ foreach (var resource in resources)
+ {
+ itemGroup.Add(new XElement("EmbeddedResource", new XAttribute("Include", resource)));
+ }
+ }
+ project.Save(projectfile);
+ }
}
}
diff --git a/Oqtane.Server/Oqtane.Server.csproj b/Oqtane.Server/Oqtane.Server.csproj
index 88064ed9..a2f3e77c 100644
--- a/Oqtane.Server/Oqtane.Server.csproj
+++ b/Oqtane.Server/Oqtane.Server.csproj
@@ -1,5 +1,5 @@
-
-
+
+
netcoreapp3.1
7.3
@@ -16,21 +16,14 @@
Not for production use.
Oqtane
-
-
-
-
-
-
+
+
+
+
-
-
-
-
-
@@ -41,10 +34,8 @@
-
-
-
+
\ No newline at end of file