GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — SharpShell/SharpShell.API/Controllers/SharpShellController.cs at master · cobbr/SharpShell

Expand file tree

/

SharpShellController.cs

Copy path
More file actions
More file actions

Latest commit

 

History

History
History
59 lines (54 loc) · 2.1 KB
/

SharpShellController.cs

Copy path

File metadata and controls

59 lines (54 loc) · 2.1 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
// Author: Ryan Cobb (@cobbr_io)
// Project: SharpShell (https://github.com/cobbr/SharpShell)
// License: BSD 3-Clause
using System;
using System.IO;
using System.Linq;
using System.Collections.Generic;
using Microsoft.AspNetCore.Mvc;
using YamlDotNet.Serialization;
using SharpShell.API.Models;
namespace SharpShell.API.Controllers
{
[Route("api/[controller]")]
[ApiController]
public class SharpShellController : ControllerBase
{
private readonly SharpShellContext _context;
public SharpShellController(SharpShellContext context)
{
this._context = context;
}
// POST api/sharpshell/compile
[HttpPost("compile")]
public ActionResult<string> PostCompile([FromBody] Compiler.CompilationRequest request = default(Compiler.CompilationRequest))
{
request.SourceDirectory = Common.SharpShellSourceDirectory;
request.ResourceDirectory = Common.SharpShellResourcesDirectory;
request.ReferenceDirectory = Common.SharpShellReferencesDirectory;
using (TextReader reader = System.IO.File.OpenText(Common.SharpShellReferencesConfig))
{
var deserializer = new DeserializerBuilder().Build();
request.References = deserializer.Deserialize<List<Compiler.Reference>>(reader)
.Where(R => R.Framework == request.TargetDotNetVersion)
.Where(R => R.Enabled)
.ToList();
}
using (TextReader reader = System.IO.File.OpenText(Common.SharpShellResourcesConfig))
{
var deserializer = new DeserializerBuilder().Build();
request.EmbeddedResources = deserializer.Deserialize<List<Compiler.EmbeddedResource>>(reader)
.Where(ER => ER.Enabled)
.ToList();
}
try
{
return Convert.ToBase64String(Compiler.Compile(request));
}
catch (CompilerException e)
{
return BadRequest(e.Message);
}
}
}
}
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.