返回提交历史
Modified
XFEExtension.NetCore.XApp/XAppLoader.cs
+10
-10
Modified
XFEExtension.NetCore.XApp/XFEExtension.NetCore.XApp.csproj
+2
-2
XFEstudio/XFEExtension.NetCore.XApp
优化结构
aa5bd23
代码差异
2 个文件
+12
-12
@@ -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
}
@@ -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