Browse Source

Cleanup

pull/107/head
Sebastian Stehle 8 years ago
parent
commit
8714b3f871
  1. 5
      global.json
  2. 14
      src/Squidex/Config/Web/WebDependencies.cs
  3. 52
      src/Squidex/Pipeline/Foo.cs
  4. 1
      src/Squidex/Squidex.csproj

5
global.json

@ -0,0 +1,5 @@
{
"sdk": {
"version": "2.0.0"
}
}

14
src/Squidex/Config/Web/WebDependencies.cs

@ -6,11 +6,8 @@
// All rights reserved.
// ==========================================================================
using System.Linq;
using Microsoft.AspNetCore.Mvc.Razor.Compilation;
using Microsoft.Extensions.DependencyInjection;
using Squidex.Config.Domain;
using Squidex.Pipeline;
namespace Squidex.Config.Web
{
@ -18,16 +15,7 @@ namespace Squidex.Config.Web
{
public static void AddMyMvc(this IServiceCollection services)
{
services
.AddMvc()
.AddMySerializers()
.ConfigureApplicationPartManager(manager =>
{
var oldMetadataReferenceFeatureProvider = manager.FeatureProviders.First(f => f is MetadataReferenceFeatureProvider);
manager.FeatureProviders.Remove(oldMetadataReferenceFeatureProvider);
manager.FeatureProviders.Add(new ReferencesMetadataReferenceFeatureProvider());
});
services.AddMvc().AddMySerializers();
}
}
}

52
src/Squidex/Pipeline/Foo.cs

@ -1,52 +0,0 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Reflection.PortableExecutable;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc.ApplicationParts;
using Microsoft.AspNetCore.Mvc.Razor.Compilation;
using Microsoft.CodeAnalysis;
using Microsoft.Extensions.DependencyModel;
namespace Squidex.Pipeline
{
public class ReferencesMetadataReferenceFeatureProvider : IApplicationFeatureProvider<MetadataReferenceFeature>
{
public void PopulateFeature(IEnumerable<ApplicationPart> parts, MetadataReferenceFeature feature)
{
var libraryPaths = new HashSet<string>(StringComparer.OrdinalIgnoreCase);
foreach (var providerPart in parts.OfType<ICompilationReferencesProvider>())
{
try
{
var referencePaths = providerPart.GetReferencePaths();
foreach (var path in referencePaths)
{
if (libraryPaths.Add(path))
{
var metadataReference = CreateMetadataReference(path);
feature.MetadataReferences.Add(metadataReference);
}
}
}
catch (InvalidOperationException)
{
Debug.WriteLine("FOO");
}
}
}
private static MetadataReference CreateMetadataReference(string path)
{
using (var stream = File.OpenRead(path))
{
var moduleMetadata = ModuleMetadata.CreateFromStream(stream, PEStreamOptions.PrefetchMetadata);
var assemblyMetadata = AssemblyMetadata.Create(moduleMetadata);
return assemblyMetadata.GetReference(filePath: path);
}
}
}
}

1
src/Squidex/Squidex.csproj

@ -65,6 +65,7 @@
<PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.ViewCompilation" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="1.1.2" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="1.1.2" />
<PackageReference Include="Microsoft.Extensions.DependencyModel" Version="2.0.0" />
<PackageReference Include="Microsoft.Extensions.Logging" Version="1.1.2" />
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.2" />
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.1.2" />

Loading…
Cancel
Save