XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFEExtension.NetCore.XApp

【DLL】XApp开发支持

公开
关注 0 Fork 0 Star 0
返回提交历史

XFEstudio/XFEExtension.NetCore.XApp

优化结构

aa5bd23
XFE工作室室长 <mail@xfegzs.com>
提交于

代码差异

2 个文件 +12 -12
Modified XFEExtension.NetCore.XApp/XAppLoader.cs +10 -10
@@ -17,7 +17,11 @@ public static class XAppLoader
17 17 /// </summary>
18 18 /// <param name="xApp">XApp对象</param>
19 19 /// <returns>编译结果信息</returns>
20 public static async Task<CompilateResult> GetMainPage(Core.XApp xApp) => await GetMainPage(LoadAssemblyFromXApp(xApp, out _, out var diagnostic), diagnostic);
20 public static async Task<CompilateResult> GetMainPage(Core.XApp xApp)
21 {
22 var assemblyBytes = CompilateAssemblyFromXApp(xApp, out var diagnostic);
23 return await GetMainPage(assemblyBytes is null ? null : Assembly.Load(assemblyBytes), diagnostic);
24 }
21 25 /// <summary>
22 26 /// 获取主页面
23 27 /// </summary>
@@ -45,18 +49,16 @@ public static class XAppLoader
45 49 /// 从XApp对象中加载程序集
46 50 /// </summary>
47 51 /// <param name="xApp">XApp对象</param>
48 /// <param name="assemblyBytes">程序集字节</param>
49 52 /// <param name="diagnostic">诊断信息</param>
50 /// <returns></returns>
51 public static Assembly? LoadAssemblyFromXApp(Core.XApp xApp, out byte[]? assemblyBytes, out ImmutableArray<Diagnostic> diagnostic) => CompilateCode(out assemblyBytes, out diagnostic, xApp.AppFiles.CodeFiles);
53 /// <returns>程序集字节</returns>
54 public static byte[]? CompilateAssemblyFromXApp(Core.XApp xApp, out ImmutableArray<Diagnostic> diagnostic) => CompilateCode(out diagnostic, xApp.AppFiles.CodeFiles);
52 55 /// <summary>
53 56 /// 编译代码
54 57 /// </summary>
55 /// <param name="assemblyBytes">程序集字节</param>
56 58 /// <param name="diagnostics">诊断信息</param>
57 59 /// <param name="xAppCodes">XApp的代码文件</param>
58 /// <returns></returns>
59 public static Assembly? CompilateCode(out byte[]? assemblyBytes, out ImmutableArray<Diagnostic> diagnostics, params XAppCode[] xAppCodes)
60 /// <returns>程序集字节</returns>
61 public static byte[]? CompilateCode(out ImmutableArray<Diagnostic> diagnostics, params XAppCode[] xAppCodes)
60 62 {
61 63 var syntaxTrees = new List<SyntaxTree>();
62 64 foreach (var xAppCode in xAppCodes)
@@ -124,13 +126,11 @@ public static class XAppLoader
124 126 diagnostics = result.Diagnostics;
125 127 if (result.Success)
126 128 {
127 assemblyBytes = stream.ToArray();
128 129 Trace.WriteLine("编译成功");
129 return Assembly.Load(assemblyBytes);
130 return stream.ToArray();
130 131 }
131 132 else
132 133 {
133 assemblyBytes = null;
134 134 return null;
135 135 }
136 136 }
Modified XFEExtension.NetCore.XApp/XFEExtension.NetCore.XApp.csproj +2 -2
@@ -15,9 +15,9 @@
15 15 <PackageIcon>logoIcon.png</PackageIcon>
16 16 <RepositoryUrl>https://github.com/XFEstudio/XFEExtension.NetCore.XApp</RepositoryUrl>
17 17 <PackageTags>XApp;XFE</PackageTags>
18 <PackageReleaseNotes>更新引用,移除部分调试输出</PackageReleaseNotes>
18 <PackageReleaseNotes>优化结构</PackageReleaseNotes>
19 19 <PackageLicenseFile>LICENSE.txt</PackageLicenseFile>
20 <Version>1.1.3</Version>
20 <Version>1.1.4</Version>
21 21 <GenerateDocumentationFile>True</GenerateDocumentationFile>
22 22 </PropertyGroup>
23 23