diff --git a/Extensions/FreeSql.Extensions.LazyLoading/FreeSql.Extensions.LazyLoading.csproj b/Extensions/FreeSql.Extensions.LazyLoading/FreeSql.Extensions.LazyLoading.csproj
index e04b645a..cefbb7c0 100644
--- a/Extensions/FreeSql.Extensions.LazyLoading/FreeSql.Extensions.LazyLoading.csproj
+++ b/Extensions/FreeSql.Extensions.LazyLoading/FreeSql.Extensions.LazyLoading.csproj
@@ -21,10 +21,19 @@
-
+
+
+
+
+
+
+
+
+
ns20;netstandard20
diff --git a/Extensions/FreeSql.Extensions.LazyLoading/LazyLoadingComplier.cs b/Extensions/FreeSql.Extensions.LazyLoading/LazyLoadingComplier.cs
index 4d286aaa..e89f72e0 100644
--- a/Extensions/FreeSql.Extensions.LazyLoading/LazyLoadingComplier.cs
+++ b/Extensions/FreeSql.Extensions.LazyLoading/LazyLoadingComplier.cs
@@ -10,12 +10,27 @@ namespace FreeSql.Extensions.LazyLoading
{
#if ns20
+ //public static Assembly CompileCode(string cscode)
+ //{
+ // Natasha.AssemblyComplier complier = new Natasha.AssemblyComplier();
+ // //complier.Domain = DomainManagment.Random;
+ // complier.Add(cscode);
+ // return complier.GetAssembly();
+ //}
+
+ internal static Lazy _compiler = new Lazy(() =>
+ {
+ var compiler = new CSScriptLib.RoslynEvaluator();
+ compiler.DisableReferencingFromCode = false;
+ compiler
+ .ReferenceAssemblyOf()
+ .ReferenceDomainAssemblies();
+ return compiler;
+ });
+
public static Assembly CompileCode(string cscode)
{
- Natasha.AssemblyComplier complier = new Natasha.AssemblyComplier();
- //complier.Domain = DomainManagment.Random;
- complier.Add(cscode);
- return complier.GetAssembly();
+ return _compiler.Value.CompileCode(cscode);
}
#else