В настоящее время я пытаюсь экспериментировать с API Рослин Рабочем на OSX и продолжать работать в следующем исключение при вызове CreateRoslynWorkspace
:Не удалось загрузить тип «System.Reflection.Metadata.ISignatureTypeProvider из сборки System.Reflection.Metadata
«Не удалось загрузить тип» System.Reflection.Metadata.ISignatureTypeProvider`1 'из сборки' System.Reflection.Metadata, Version = 1.4.1.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a '. "
Может ли кто-либо еще пролить свет на то, что может быть причиной этого?
Вот код, я использую:
public static class Class1
{
public static IEnumerable<Microsoft.CodeAnalysis.Workspace> Create(string projectPath)
{
var builder = new ProjectContextBuilder().WithProjectDirectory(projectPath);
return builder.BuildAllTargets().Select(context => context.CreateRoslynWorkspace());
}
public static void GetProject()
{
// Entry point
var path = Directory.GetCurrentDirectory() + "/src/DemoLib/project.json";
var result = Create(path).ToList();
}
}
и это project.json я использую
{ "version": "1.0.0-*", "buildOptions": { "debugType": "portable" }, "dependencies": { "Microsoft.CodeAnalysis.CSharp": "2.0.0-rc2", "Microsoft.CodeAnalysis.CSharp.Features": "2.0.0-rc2", "Microsoft.CodeAnalysis.CSharp.Workspaces": "2.0.0-rc2", "Microsoft.DotNet.ProjectModel": "1.0.0-rc3-1-003177", "Microsoft.DotNet.ProjectModel.Loader": "1.0.0-preview2-1-003177", "Microsoft.DotNet.ProjectModel.Workspaces": "1.0.0-preview2-1-003177" }, "frameworks": { "netcoreapp1.1": { "imports": [ "portable-net45+win8" ] } } }
Вот весь трассировки стека также:
"в System.Reflection.RuntimeModule.GetTypes (модуль RuntimeModule) \ n в System.Reflection.RuntimeAssembly.get_DefinedTypes() \ n в System.Composition.Hosting.Cont ainerConfiguration.b__0 (Assembly a) \ n в System.Linq.Enumerable.d__159
2.MoveNext()\n at System.Composition.TypedParts.TypedPartExportDescriptorProvider..ctor(IEnumerable
1 тип, атрибут AttributedModelProviderContext) \ n в System.Composition.Hosting.ContainerConfiguration.CreateContainer() \ n в Microsoft.CodeAnalysis.Host.Mef.MefHostServices .Create (IEnumerable1 assemblies)\n at Microsoft.CodeAnalysis.Host.Mef.MefHostServices.get_DefaultHost()\n at Microsoft.DotNet.ProjectModel.Workspaces.ProjectJsonWorkspace..ctor(ProjectContext context)\n at Microsoft.DotNet.ProjectModel.Workspaces.WorkspaceProjectContextExtensions.CreateRoslynWorkspace(ProjectContext context)\n at ClassLibrary.Class1.<>c.<Create>b__0_0(ProjectContext context) in /Users/personal/Dev/RoslynWorkspace2/src/Lib/Library.cs:line 16\n at System.Linq.Enumerable.SelectEnumerableIterator
2.MoveNext() \ n в System.Collections.Generic.List1..ctor(IEnumerable
1 сборник) \ n в System.Linq.Enumerable.ToList [TSource] (источник IEnumerable1) \ n в ClassLibrary.Class1. GetProject() в /Users/personal/Dev/RoslynWorkspace2/src/Lib/Library.cs:line 21 \ n в WebAPIApplication.Controllers.ValuesController.Get() in/Users/personal/Dev/RoslynWorkspace2/src/WebAPIApplication/Controllers /ValuesController.cs:line 13 \ n в lambda_method (Closure, Object, Object []) \ n в Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.d__28.MoveNext() "
Привет, Джозеф, вы решили эту проблему? – Mergasov
Да, я выяснил, что это была проблема в одном из пакетов, я вернулся к предыдущей версии, и проблема исчезла. –