Black.Beard.Roslyn 1.0.112

There is a newer version of this package available.
See the version list below for details.
dotnet add package Black.Beard.Roslyn --version 1.0.112
NuGet\Install-Package Black.Beard.Roslyn -Version 1.0.112
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Black.Beard.Roslyn" Version="1.0.112" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Black.Beard.Roslyn --version 1.0.112
#r "nuget: Black.Beard.Roslyn, 1.0.112"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Black.Beard.Roslyn as a Cake Addin
#addin nuget:?package=Black.Beard.Roslyn&version=1.0.112

// Install Black.Beard.Roslyn as a Cake Tool
#tool nuget:?package=Black.Beard.Roslyn&version=1.0.112

Black.Beard.Roslyn

Build status

Use Roslyn for generate the assembly


    // Use NJsonSchema for generate json schema
    JsonSchema schema = JsonSchema.FromType(typeof(Sample1));

    // Helper for manipulate codeDom object
    var samples = "CodeDOMSample".ToNamespace()
        .Import("System")       // append usings

        .AppendPoco(schema)     // add a poco class from schema

        .ToCSharp(Path.Combine(_dir.FullName, "class1.cs")) // Generate csharp code
        ;

    // compile
    AssemblyResult assembly = GetCsharpBuilder(samples.FullName);

    // consumme the result assembly
    if (assembly.Success)
    {
        var ass = assembly.LoadAssembly();
        var type = ass.GetTypes().First(c => c.Name == "Sample1");
        Assert.NotNull(type);
    
        var property = type.GetProperties().FirstOrDefault(c => nameof(Sample1.Name) == c.Name);
        Assert.NotNull(property);
    
    }
    else
    {
        var payload = File.ReadAllText(samples.FullName);
        throw new Exception();
    }


    private static Bb.Compilers.AssemblyResult GetCsharpBuilder(string filepathCode)
    {

        var fileInfo = new FileInfo(filepathCode);

        // Build assembly

        Action<CSharpCompilationOptions> action = (r) =>
        {

        };

        BuildCSharp builder = new BuildCSharp()
        {
            ResolveAssembliesInCode = true,
            Debug = true,
            LanguageVersion = LanguageVersion.CSharp7,
        }
        .AddSource(fileInfo)
        .Suppress("CS1702", "CS1998")
        ;

        // System.Collections
        builder.References.AddRange(
            typeof(object),
            typeof(RequiredAttribute)
        );

        var assembly = builder.Build();
        return assembly;

    }        

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on Black.Beard.Roslyn:

Package Downloads
Black.Beard.Jslt

Implementation of jslt language in DOTNET. Use a template for transform Json document to another json document.

Black.Beard.OpenApi

add helpers for manipulate open api document. provide a visitor pattern.

Black.Beard.OpenApiServices

add visitor for generate code from open api documentation

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.117 127 4/7/2024
1.0.114 255 4/3/2024
1.0.113 279 3/31/2024
1.0.112 210 3/19/2024
1.0.111 95 3/16/2024
1.0.110 87 3/16/2024
1.0.109 121 3/15/2024
1.0.108 132 3/13/2024
1.0.107 182 3/12/2024
1.0.106 86 3/9/2024
1.0.105 81 3/6/2024
1.0.104 88 3/5/2024
1.0.103 126 3/4/2024
1.0.102 123 3/4/2024
1.0.101 79 3/4/2024
1.0.100 117 3/4/2024
1.0.99 124 3/3/2024
1.0.98 72 2/29/2024
1.0.97 79 2/29/2024
1.0.96 76 2/29/2024
1.0.95 92 2/27/2024
1.0.94 102 2/26/2024
1.0.93 110 2/25/2024
1.0.92 78 2/24/2024
1.0.91 82 2/24/2024
1.0.90 81 2/24/2024
1.0.89 165 2/24/2024
1.0.88 78 2/24/2024
1.0.87 99 2/23/2024
1.0.86 87 2/23/2024
1.0.85 83 2/23/2024
1.0.84 91 2/23/2024
1.0.83 93 2/23/2024
1.0.82 87 2/23/2024
1.0.81 85 2/22/2024
1.0.80 78 2/22/2024
1.0.79 68 2/22/2024
1.0.78 62 2/22/2024
1.0.77 85 2/21/2024
1.0.76 117 2/19/2024
1.0.75 73 2/19/2024
1.0.74 71 2/18/2024
1.0.73 67 2/17/2024
1.0.72 246 12/12/2023
1.0.70 224 10/17/2023
1.0.69 147 10/17/2023
1.0.68 124 10/17/2023
1.0.67 126 10/16/2023
1.0.66 141 10/16/2023
1.0.65 167 10/13/2023
1.0.64 166 10/10/2023
1.0.63 242 9/13/2023
1.0.62 166 7/31/2023
1.0.61 174 7/28/2023
1.0.60 157 7/28/2023
1.0.59 180 7/28/2023
1.0.58 164 7/28/2023
1.0.57 123 7/28/2023
1.0.56 146 7/27/2023
1.0.55 152 7/27/2023
1.0.54 180 7/27/2023
1.0.53 155 7/27/2023
1.0.52 171 7/27/2023
1.0.51 196 7/25/2023
1.0.50 165 7/25/2023
1.0.49 423 7/4/2023
1.0.48 203 6/30/2023
1.0.47 233 6/30/2023
1.0.46 182 6/30/2023
1.0.45 232 6/17/2023
1.0.44 217 6/17/2023
1.0.43 199 6/17/2023
1.0.42 218 6/6/2023
1.0.41 231 6/5/2023
1.0.40 200 6/5/2023
1.0.39 237 6/5/2023
1.0.38 232 5/31/2023
1.0.37 163 5/30/2023
1.0.36 205 5/30/2023
1.0.35 168 5/30/2023
1.0.33 187 5/30/2023
1.0.32 212 5/30/2023
1.0.31 187 5/30/2023
1.0.30 194 5/29/2023
1.0.29 194 5/25/2023
1.0.28 178 5/24/2023
1.0.27 169 5/18/2023
1.0.26 188 5/18/2023
1.0.25 208 5/18/2023
1.0.24 186 5/16/2023
1.0.23 190 5/15/2023
1.0.22 186 5/15/2023
1.0.20 169 5/14/2023
1.0.18 1,258 5/18/2022
1.0.17 1,688 5/17/2022
1.0.16 438 5/17/2022
1.0.15 456 4/3/2022
1.0.13 444 4/3/2022
1.0.12 1,727 3/28/2022
1.0.11 434 3/27/2022
1.0.10 3,676 3/16/2022
1.0.9 445 3/16/2022
1.0.8 437 3/16/2022
1.0.7 444 3/16/2022
1.0.6 475 3/16/2022
1.0.5 443 3/16/2022
1.0.4 438 3/14/2022
1.0.3 450 3/6/2022
1.0.2 9,633 12/19/2021
1.0.1 414 12/18/2021