diff --git a/samples/Sandbox/Sandbox.csproj b/samples/Sandbox/Sandbox.csproj
index d2e66988e0..7a57a13529 100644
--- a/samples/Sandbox/Sandbox.csproj
+++ b/samples/Sandbox/Sandbox.csproj
@@ -5,6 +5,7 @@
net6.0
true
true
+
diff --git a/src/Avalonia.Build.Tasks/XamlCompilerTaskExecutor.cs b/src/Avalonia.Build.Tasks/XamlCompilerTaskExecutor.cs
index 6992701a5a..6718faeb68 100644
--- a/src/Avalonia.Build.Tasks/XamlCompilerTaskExecutor.cs
+++ b/src/Avalonia.Build.Tasks/XamlCompilerTaskExecutor.cs
@@ -304,7 +304,7 @@ namespace Avalonia.Build.Tasks
|| "Internal".Equals(classModifierText, StringComparison.OrdinalIgnoreCase))
classModifierPublic = false;
else
- throw new XamlParseException("Invalid value for x:ClassModifier. Expected value are: Public, NotPublic.", precompileDirective);
+ throw new XamlParseException("Invalid value for x:ClassModifier. Expected value are: Public, NotPublic (internal).", precompileDirective);
}
var classDirective = initialRoot.Children.OfType()
diff --git a/src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/GroupTransformers/XamlIncludeGroupTransformer.cs b/src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/GroupTransformers/XamlIncludeGroupTransformer.cs
index b6a4b599fa..28a48e5855 100644
--- a/src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/GroupTransformers/XamlIncludeGroupTransformer.cs
+++ b/src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/GroupTransformers/XamlIncludeGroupTransformer.cs
@@ -108,7 +108,7 @@ internal class AvaloniaXamlIncludeTransformer : IXamlAstGroupTransformer
}
var relativeName = "Build:" + assetPath.Substring(assemblyNameSeparator);
- var buildMethod = avaResType.FindMethod(m => m.Name == relativeName);
+ var buildMethod = avaResType.FindMethod(m => m.Name == relativeName && m.IsPublic);
if (buildMethod is not null)
{
return FromMethod(context, buildMethod, sourceUriNode, expectedLoadedType, node, assetPathUri, assembly, additionalProperties);
@@ -119,7 +119,7 @@ internal class AvaloniaXamlIncludeTransformer : IXamlAstGroupTransformer
}
return context.ParseError(
- $"Unable to resolve XAML resource \"{assetPathUri}\" in the \"{assembly}\" assembly.",
+ $"Unable to resolve XAML resource \"{assetPathUri}\" in the \"{assembly}\" assembly. Make sure this file exists and is public.",
sourceUriNode, node);
}