diff --git a/framework/src/Volo.Abp.VirtualFileSystem/Volo.Abp.VirtualFileSystem.csproj b/framework/src/Volo.Abp.VirtualFileSystem/Volo.Abp.VirtualFileSystem.csproj
index f3a0fefb2a..b4aa55b1c0 100644
--- a/framework/src/Volo.Abp.VirtualFileSystem/Volo.Abp.VirtualFileSystem.csproj
+++ b/framework/src/Volo.Abp.VirtualFileSystem/Volo.Abp.VirtualFileSystem.csproj
@@ -17,6 +17,7 @@
+
diff --git a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/AbpVirtualFileSystemOptions.cs b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/AbpVirtualFileSystemOptions.cs
index c4a4d203d2..aff1aee4e9 100644
--- a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/AbpVirtualFileSystemOptions.cs
+++ b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/AbpVirtualFileSystemOptions.cs
@@ -3,7 +3,7 @@
public class AbpVirtualFileSystemOptions
{
public VirtualFileSetList FileSets { get; }
-
+
public AbpVirtualFileSystemOptions()
{
FileSets = new VirtualFileSetList();
diff --git a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/Embedded/EmbeddedFileSet.cs b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/Embedded/AbpEmbeddedFileProvider.cs
similarity index 81%
rename from framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/Embedded/EmbeddedFileSet.cs
rename to framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/Embedded/AbpEmbeddedFileProvider.cs
index d2a0556527..ae0acafe09 100644
--- a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/Embedded/EmbeddedFileSet.cs
+++ b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/Embedded/AbpEmbeddedFileProvider.cs
@@ -8,7 +8,7 @@ using Microsoft.Extensions.FileProviders;
namespace Volo.Abp.VirtualFileSystem.Embedded
{
- public class EmbeddedFileSet : IVirtualFileSet
+ public class AbpEmbeddedFileProvider : DictionaryBasedFileProvider
{
[NotNull]
public Assembly Assembly { get; }
@@ -16,19 +16,22 @@ namespace Volo.Abp.VirtualFileSystem.Embedded
[CanBeNull]
public string BaseNamespace { get; }
- [CanBeNull]
- public string BaseFolderInProject { get; }
+ protected override IDictionary Files => _files.Value;
+ private readonly Lazy> _files;
- public EmbeddedFileSet(
+ public AbpEmbeddedFileProvider(
[NotNull] Assembly assembly,
- [CanBeNull] string baseNamespace = null,
- [CanBeNull] string baseFolderInProject = null)
+ [CanBeNull] string baseNamespace = null)
{
Check.NotNull(assembly, nameof(assembly));
Assembly = assembly;
BaseNamespace = baseNamespace;
- BaseFolderInProject = baseFolderInProject;
+
+ _files = new Lazy>(
+ CreateFiles,
+ true
+ );
}
public void AddFiles(Dictionary files)
@@ -127,5 +130,17 @@ namespace Volo.Abp.VirtualFileSystem.Embedded
return filePath.Substring(filePath.LastIndexOf("/", StringComparison.Ordinal) + 1);
}
+
+ protected override string NormalizePath(string subpath)
+ {
+ return VirtualFilePathHelper.NormalizePath(subpath);
+ }
+
+ private Dictionary CreateFiles()
+ {
+ var files = new Dictionary(StringComparer.OrdinalIgnoreCase);
+ AddFiles(files);
+ return files;
+ }
}
}
\ No newline at end of file
diff --git a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/Embedded/EmbeddedVirtualFileSetInfo.cs b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/Embedded/EmbeddedVirtualFileSetInfo.cs
new file mode 100644
index 0000000000..9f4d87d783
--- /dev/null
+++ b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/Embedded/EmbeddedVirtualFileSetInfo.cs
@@ -0,0 +1,22 @@
+using System.Reflection;
+using Microsoft.Extensions.FileProviders;
+
+namespace Volo.Abp.VirtualFileSystem.Embedded
+{
+ public class EmbeddedVirtualFileSetInfo : VirtualFileSetInfo
+ {
+ public Assembly Assembly { get; }
+
+ public string BaseFolder { get; }
+
+ public EmbeddedVirtualFileSetInfo(
+ IFileProvider fileProvider,
+ Assembly assembly,
+ string baseFolder = null)
+ : base(fileProvider)
+ {
+ Assembly = assembly;
+ BaseFolder = baseFolder;
+ }
+ }
+}
\ No newline at end of file
diff --git a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/IVirtualFileSet.cs b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/IVirtualFileSet.cs
deleted file mode 100644
index 1880165d02..0000000000
--- a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/IVirtualFileSet.cs
+++ /dev/null
@@ -1,10 +0,0 @@
-using System.Collections.Generic;
-using Microsoft.Extensions.FileProviders;
-
-namespace Volo.Abp.VirtualFileSystem
-{
- public interface IVirtualFileSet
- {
- void AddFiles(Dictionary files);
- }
-}
\ No newline at end of file
diff --git a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/Physical/PhysicalVirtualFileSetInfo.cs b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/Physical/PhysicalVirtualFileSetInfo.cs
new file mode 100644
index 0000000000..525fa178d6
--- /dev/null
+++ b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/Physical/PhysicalVirtualFileSetInfo.cs
@@ -0,0 +1,19 @@
+using JetBrains.Annotations;
+using Microsoft.Extensions.FileProviders;
+
+namespace Volo.Abp.VirtualFileSystem.Physical
+{
+ public class PhysicalVirtualFileSetInfo : VirtualFileSetInfo
+ {
+ public string Root { get; }
+
+ public PhysicalVirtualFileSetInfo(
+ [NotNull] IFileProvider fileProvider,
+ [NotNull] string root
+ )
+ : base(fileProvider)
+ {
+ Root = Check.NotNullOrWhiteSpace(root, nameof(root));
+ }
+ }
+}
\ No newline at end of file
diff --git a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFilePathHelper.cs b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFilePathHelper.cs
index 03f851a7e3..47900d5aa9 100644
--- a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFilePathHelper.cs
+++ b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFilePathHelper.cs
@@ -6,8 +6,6 @@ namespace Volo.Abp.VirtualFileSystem
{
internal static class VirtualFilePathHelper
{
- //TODO: Optimize this class!
-
public static string NormalizePath(string fullPath)
{
if (fullPath.Equals("/", StringComparison.Ordinal))
diff --git a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFileProvider.cs b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFileProvider.cs
index 5f90ef7925..eb4cd4e415 100644
--- a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFileProvider.cs
+++ b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFileProvider.cs
@@ -1,5 +1,4 @@
-using System;
-using System.Collections.Generic;
+using System.Collections.Generic;
using System.Linq;
using Microsoft.Extensions.FileProviders;
using Microsoft.Extensions.Options;
@@ -28,6 +27,11 @@ namespace Volo.Abp.VirtualFileSystem
public virtual IDirectoryContents GetDirectoryContents(string subpath)
{
+ if (subpath == "")
+ {
+ subpath = "/";
+ }
+
return _hybridFileProvider.GetDirectoryContents(subpath);
}
@@ -42,52 +46,12 @@ namespace Volo.Abp.VirtualFileSystem
fileProviders.Add(dynamicFileProvider);
- if (_options.FileSets.PhysicalPaths.Any())
+ foreach (var fileSet in _options.FileSets.AsEnumerable().Reverse())
{
- fileProviders.AddRange(
- _options.FileSets.PhysicalPaths
- .Select(rootPath => new PhysicalFileProvider(rootPath))
- .Reverse()
- );
+ fileProviders.Add(fileSet.FileProvider);
}
- fileProviders.Add(new InternalVirtualFileProvider(_options));
-
return new CompositeFileProvider(fileProviders);
}
-
- protected class InternalVirtualFileProvider : DictionaryBasedFileProvider
- {
- protected override IDictionary Files => _files.Value;
-
- private readonly AbpVirtualFileSystemOptions _options;
- private readonly Lazy> _files;
-
- public InternalVirtualFileProvider(AbpVirtualFileSystemOptions options)
- {
- _options = options;
- _files = new Lazy>(
- CreateFiles,
- true
- );
- }
-
- private Dictionary CreateFiles()
- {
- var files = new Dictionary(StringComparer.OrdinalIgnoreCase);
-
- foreach (var set in _options.FileSets)
- {
- set.AddFiles(files);
- }
-
- return files;
- }
-
- protected override string NormalizePath(string subpath)
- {
- return VirtualFilePathHelper.NormalizePath(subpath);
- }
- }
}
}
\ No newline at end of file
diff --git a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFileSetInfo.cs b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFileSetInfo.cs
new file mode 100644
index 0000000000..694729f02a
--- /dev/null
+++ b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFileSetInfo.cs
@@ -0,0 +1,15 @@
+using JetBrains.Annotations;
+using Microsoft.Extensions.FileProviders;
+
+namespace Volo.Abp.VirtualFileSystem
+{
+ public class VirtualFileSetInfo
+ {
+ public IFileProvider FileProvider { get; }
+
+ public VirtualFileSetInfo([NotNull] IFileProvider fileProvider)
+ {
+ FileProvider = Check.NotNull(fileProvider, nameof(fileProvider));
+ }
+ }
+}
\ No newline at end of file
diff --git a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFileSetList.cs b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFileSetList.cs
index 2ddd0ff3a4..371f8350d8 100644
--- a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFileSetList.cs
+++ b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFileSetList.cs
@@ -2,13 +2,8 @@
namespace Volo.Abp.VirtualFileSystem
{
- public class VirtualFileSetList : List
+ public class VirtualFileSetList : List
{
- public List PhysicalPaths { get; }
-
- public VirtualFileSetList()
- {
- PhysicalPaths = new List();
- }
+
}
}
\ No newline at end of file
diff --git a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFileSetListExtensions.cs b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFileSetListExtensions.cs
index 399f76f408..f1ca9749ea 100644
--- a/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFileSetListExtensions.cs
+++ b/framework/src/Volo.Abp.VirtualFileSystem/Volo/Abp/VirtualFileSystem/VirtualFileSetListExtensions.cs
@@ -1,44 +1,90 @@
using System;
using System.IO;
-using System.Linq;
+using System.Reflection;
using JetBrains.Annotations;
+using Microsoft.Extensions.FileProviders;
+using Microsoft.Extensions.FileProviders.Physical;
using Volo.Abp.VirtualFileSystem.Embedded;
+using Volo.Abp.VirtualFileSystem.Physical;
namespace Volo.Abp.VirtualFileSystem
{
public static class VirtualFileSetListExtensions
{
- public static void AddEmbedded([NotNull] this VirtualFileSetList list, [CanBeNull] string baseNamespace = null, string baseFolderInProject = null)
+ public static void AddEmbedded(
+ [NotNull] this VirtualFileSetList list,
+ [CanBeNull] string baseNamespace = null,
+ [CanBeNull] string baseFolder = null)
{
Check.NotNull(list, nameof(list));
- list.Add(
- new EmbeddedFileSet(
- typeof(T).Assembly,
- baseNamespace,
- baseFolderInProject
- )
+ var assembly = typeof(T).Assembly;
+ var fileProvider = CreateFileProvider(
+ assembly,
+ baseNamespace,
+ baseFolder
);
+
+ list.Add(new EmbeddedVirtualFileSetInfo(fileProvider, assembly, baseFolder));
}
- public static void ReplaceEmbeddedByPhysical([NotNull] this VirtualFileSetList list, [NotNull] string pyhsicalPath)
+ public static void AddPhysical(
+ [NotNull] this VirtualFileSetList list,
+ [NotNull] string root,
+ ExclusionFilters exclusionFilters = ExclusionFilters.Sensitive)
{
Check.NotNull(list, nameof(list));
- Check.NotNull(pyhsicalPath, nameof(pyhsicalPath));
+ Check.NotNullOrWhiteSpace(root, nameof(root));
- var assembly = typeof(T).Assembly;
- var embeddedFileSets = list.OfType().Where(fs => fs.Assembly == assembly).ToList();
+ var fileProvider = new PhysicalFileProvider(root, exclusionFilters);
+ list.Add(new PhysicalVirtualFileSetInfo(fileProvider, root));
+ }
+
+ private static IFileProvider CreateFileProvider(
+ [NotNull] Assembly assembly,
+ [CanBeNull] string baseNamespace = null,
+ [CanBeNull] string baseFolder = null)
+ {
+ Check.NotNull(assembly, nameof(assembly));
- foreach (var embeddedFileSet in embeddedFileSets)
+ var info = assembly.GetManifestResourceInfo("Microsoft.Extensions.FileProviders.Embedded.Manifest.xml");
+
+ if (info == null)
{
- list.Remove(embeddedFileSet);
+ return new AbpEmbeddedFileProvider(assembly, baseNamespace);
+ }
+
+ if (baseFolder == null)
+ {
+ return new ManifestEmbeddedFileProvider(assembly);
+ }
- if (!embeddedFileSet.BaseFolderInProject.IsNullOrEmpty())
+ return new ManifestEmbeddedFileProvider(assembly, baseFolder);
+ }
+
+ public static void ReplaceEmbeddedByPhysical(
+ [NotNull] this VirtualFileSetList fileSets,
+ [NotNull] string physicalPath)
+ {
+ Check.NotNull(fileSets, nameof(fileSets));
+ Check.NotNullOrWhiteSpace(physicalPath, nameof(physicalPath));
+
+ var assembly = typeof(T).Assembly;
+
+ for (var i = 0; i < fileSets.Count; i++)
+ {
+ if (fileSets[i] is EmbeddedVirtualFileSetInfo embeddedVirtualFileSet &&
+ embeddedVirtualFileSet.Assembly == assembly)
{
- pyhsicalPath = Path.Combine(pyhsicalPath, embeddedFileSet.BaseFolderInProject);
- }
+ var thisPath = physicalPath;
- list.PhysicalPaths.Add(pyhsicalPath);
+ if (!embeddedVirtualFileSet.BaseFolder.IsNullOrEmpty())
+ {
+ thisPath = Path.Combine(thisPath, embeddedVirtualFileSet.BaseFolder);
+ }
+
+ fileSets[i] = new PhysicalVirtualFileSetInfo(new PhysicalFileProvider(thisPath), thisPath);
+ }
}
}
}
diff --git a/framework/test/Volo.Abp.VirtualFileSystem.Tests/Volo.Abp.VirtualFileSystem.Tests.csproj b/framework/test/Volo.Abp.VirtualFileSystem.Tests/Volo.Abp.VirtualFileSystem.Tests.csproj
index 9f8f904aa4..bcb9dcbf74 100644
--- a/framework/test/Volo.Abp.VirtualFileSystem.Tests/Volo.Abp.VirtualFileSystem.Tests.csproj
+++ b/framework/test/Volo.Abp.VirtualFileSystem.Tests/Volo.Abp.VirtualFileSystem.Tests.csproj
@@ -4,6 +4,7 @@
netcoreapp3.1
+ true
@@ -15,6 +16,7 @@
+
diff --git a/framework/test/Volo.Abp.VirtualFileSystem.Tests/Volo/Abp/VirtualFileSystem/MyResources/js/my{test}.2.9.min.js b/framework/test/Volo.Abp.VirtualFileSystem.Tests/Volo/Abp/VirtualFileSystem/MyResources/js/my{test}.2.9.min.js
new file mode 100644
index 0000000000..1c74f24545
--- /dev/null
+++ b/framework/test/Volo.Abp.VirtualFileSystem.Tests/Volo/Abp/VirtualFileSystem/MyResources/js/my{test}.2.9.min.js
@@ -0,0 +1 @@
+//my{test}.2.9.min.js-content
\ No newline at end of file
diff --git a/framework/test/Volo.Abp.VirtualFileSystem.Tests/Volo/Abp/VirtualFileSystem/VirtualFileProvider_Tests.cs b/framework/test/Volo.Abp.VirtualFileSystem.Tests/Volo/Abp/VirtualFileSystem/VirtualFileProvider_Tests.cs
index 2243d9a11a..aae01ff912 100644
--- a/framework/test/Volo.Abp.VirtualFileSystem.Tests/Volo/Abp/VirtualFileSystem/VirtualFileProvider_Tests.cs
+++ b/framework/test/Volo.Abp.VirtualFileSystem.Tests/Volo/Abp/VirtualFileSystem/VirtualFileProvider_Tests.cs
@@ -1,5 +1,4 @@
-using System;
-using System.IO;
+using System.IO;
using System.Linq;
using System.Text;
using Microsoft.Extensions.DependencyInjection;
@@ -34,6 +33,22 @@ namespace Volo.Abp.VirtualFileSystem
Encoding.UTF8.GetString(stream.GetAllBytes()).ShouldBe("//jquery-3-1-1-min.js-contents");
}
}
+
+ [Fact]
+ public void Should_Define_And_Get_Embedded_Resources_With_Special_Chars()
+ {
+ //Act
+ var resource = _virtualFileProvider.GetFileInfo("/js/my{test}.2.9.min.js");
+
+ //Assert
+ resource.ShouldNotBeNull();
+ resource.Exists.ShouldBeTrue();
+
+ using (var stream = resource.CreateReadStream())
+ {
+ Encoding.UTF8.GetString(stream.GetAllBytes()).ShouldBe("//my{test}.2.9.min.js-content");
+ }
+ }
[Fact]
public void Should_Define_And_Get_Embedded_Directory_Contents()
@@ -45,7 +60,9 @@ namespace Volo.Abp.VirtualFileSystem
contents.Exists.ShouldNotBeNull();
var contentList = contents.ToList();
+
contentList.ShouldContain(x => x.Name == "jquery-3-1-1-min.js");
+ contentList.ShouldContain(x => x.Name == "my{test}.2.9.min.js");
}
[Theory]
@@ -70,7 +87,9 @@ namespace Volo.Abp.VirtualFileSystem
{
Configure(options =>
{
- options.FileSets.AddEmbedded("Volo.Abp.VirtualFileSystem.MyResources");
+ options.FileSets.AddEmbedded(
+ baseFolder: "/Volo/Abp/VirtualFileSystem/MyResources"
+ );
});
}
}
diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyCompanyName.MyProjectName.Domain.Shared.csproj b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyCompanyName.MyProjectName.Domain.Shared.csproj
index f0b3cc8b33..df627353c0 100644
--- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyCompanyName.MyProjectName.Domain.Shared.csproj
+++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyCompanyName.MyProjectName.Domain.Shared.csproj
@@ -5,8 +5,9 @@
netstandard2.0
MyCompanyName.MyProjectName
+ true
-
+
@@ -23,4 +24,8 @@
+
+
+
+
diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyProjectNameDomainSharedModule.cs b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyProjectNameDomainSharedModule.cs
index 340d28ac3a..7fb1e30637 100644
--- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyProjectNameDomainSharedModule.cs
+++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyProjectNameDomainSharedModule.cs
@@ -35,7 +35,7 @@ namespace MyCompanyName.MyProjectName
{
Configure(options =>
{
- options.FileSets.AddEmbedded("MyCompanyName.MyProjectName");
+ options.FileSets.AddEmbedded();
});
Configure(options =>
diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/MyProjectNameIdentityServerModule.cs b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/MyProjectNameIdentityServerModule.cs
index caa21c9706..1da9619803 100644
--- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/MyProjectNameIdentityServerModule.cs
+++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.IdentityServer/MyProjectNameIdentityServerModule.cs
@@ -77,8 +77,6 @@ namespace MyCompanyName.MyProjectName
{
Configure(options =>
{
- options.FileSets.ReplaceEmbeddedByPhysical(Path.Combine(hostingEnvironment.ContentRootPath, $"..{Path.DirectorySeparatorChar}MyCompanyName.MyProjectName.Domain.Shared"));
- options.FileSets.ReplaceEmbeddedByPhysical(Path.Combine(hostingEnvironment.ContentRootPath, $"..{Path.DirectorySeparatorChar}MyCompanyName.MyProjectName.Domain"));
//
options.FileSets.ReplaceEmbeddedByPhysical(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}..{0}..{0}..{0}framework{0}src{0}Volo.Abp.UI", Path.DirectorySeparatorChar)));
options.FileSets.ReplaceEmbeddedByPhysical(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}..{0}..{0}..{0}framework{0}src{0}Volo.Abp.AspNetCore.Mvc.UI", Path.DirectorySeparatorChar)));
@@ -87,6 +85,8 @@ namespace MyCompanyName.MyProjectName
options.FileSets.ReplaceEmbeddedByPhysical(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}..{0}..{0}..{0}framework{0}src{0}Volo.Abp.AspNetCore.Mvc.UI.Theme.Basic", Path.DirectorySeparatorChar)));
options.FileSets.ReplaceEmbeddedByPhysical(Path.Combine(hostingEnvironment.ContentRootPath, string.Format("..{0}..{0}..{0}..{0}..{0}modules{0}account{0}src{0}Volo.Abp.Account.Web", Path.DirectorySeparatorChar)));
//
+ options.FileSets.ReplaceEmbeddedByPhysical(Path.Combine(hostingEnvironment.ContentRootPath, $"..{Path.DirectorySeparatorChar}MyCompanyName.MyProjectName.Domain.Shared"));
+ options.FileSets.ReplaceEmbeddedByPhysical(Path.Combine(hostingEnvironment.ContentRootPath, $"..{Path.DirectorySeparatorChar}MyCompanyName.MyProjectName.Domain"));
});
}
diff --git a/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/Localization/MyProjectName/tr.json b/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/Localization/MyProjectName/tr.json
index 2b48193353..8decb5134e 100644
--- a/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/Localization/MyProjectName/tr.json
+++ b/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/Localization/MyProjectName/tr.json
@@ -1,6 +1,6 @@
{
"culture": "tr",
"texts": {
- "ManageYourProfile": "Profil yönetimi"
+ "ManageYourProfile": "Profil yönetimi"
}
}
\ No newline at end of file
diff --git a/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyCompanyName.MyProjectName.Domain.Shared.csproj b/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyCompanyName.MyProjectName.Domain.Shared.csproj
index 3483fb41cd..526c13a2e4 100644
--- a/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyCompanyName.MyProjectName.Domain.Shared.csproj
+++ b/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyCompanyName.MyProjectName.Domain.Shared.csproj
@@ -5,12 +5,17 @@
netstandard2.0
MyCompanyName.MyProjectName
+ true
+
+
+
+
diff --git a/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyProjectNameDomainSharedModule.cs b/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyProjectNameDomainSharedModule.cs
index 384aae162a..081ccfb739 100644
--- a/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyProjectNameDomainSharedModule.cs
+++ b/templates/module/aspnet-core/src/MyCompanyName.MyProjectName.Domain.Shared/MyProjectNameDomainSharedModule.cs
@@ -17,7 +17,7 @@ namespace MyCompanyName.MyProjectName
{
Configure(options =>
{
- options.FileSets.AddEmbedded("MyCompanyName.MyProjectName");
+ options.FileSets.AddEmbedded();
});
Configure(options =>