Skip to content

Commit d67ce41

Browse files
committed
NH-3807 - Guard CodeDom and handle switch between DelegateBuilder creation calls.
1 parent bbb1dbd commit d67ce41

File tree

3 files changed

+10
-0
lines changed

3 files changed

+10
-0
lines changed

src/NHibernate/Bytecode/CodeDom/BytecodeProviderImpl.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
#if FEATURE_CODEDOM
2+
13
using System;
24
using System.CodeDom.Compiler;
35
using System.Reflection;
@@ -262,3 +264,5 @@ private string GenerateCode()
262264
#endregion
263265
}
264266
}
267+
268+
#endif

src/NHibernate/Bytecode/EmitUtil.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,11 @@ public static System.Type DefineDelegateType(
179179
methodBuilder.SetImplementationFlags(
180180
MethodImplAttributes.Runtime | MethodImplAttributes.Managed);
181181

182+
#if FEATURE_LEGACY_REFLECTION_API
182183
return delegateBuilder.CreateType();
184+
#else
185+
return delegateBuilder.CreateTypeInfo().AsType();
186+
#endif
183187
}
184188

185189
public static void EmitLoadType(ILGenerator il, System.Type type)

src/NHibernate/Cfg/Environment.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -348,8 +348,10 @@ private static IBytecodeProvider BuildBytecodeProvider(string providerName)
348348
{
349349
switch (providerName)
350350
{
351+
#if FEATURE_CODEDOM
351352
case "codedom":
352353
return new Bytecode.CodeDom.BytecodeProviderImpl();
354+
#endif
353355
case "lcg":
354356
return new Bytecode.Lightweight.BytecodeProviderImpl();
355357
case "null":

0 commit comments

Comments
 (0)