2015-02-13 3 views
1

Я пытаюсь перенести библиотеку в ASP.NET CORE, но изо всех сил пытаюсь заставить Visual Studio ссылаться на все важные части. Я заметил, что mscorlib добавляется только к ссылкам в ASP.NET 5.0, но не под ASP.NET CORE. В обеих рамках я не получаю базовые типы, такие как System.Object, даже когда mscorelib ссылается в ASP.NET 5.0Mscorlib не указан в Asp.Net 5 Библиотека классов

Сначала я работал с бета-2, но потом я создал свой собственный CoreCLR и установил его на своей машине с помощью kvm.

список Kvm показывает следующее:

Active Version   Runtime Architecture Location      Alias 
------ -------   ------- ------------ --------      ----- 
     1.0.0-beta4-11037 clr  x64   C:\Users\SomeName\.k\runtimes 
     1.0.0-beta4-11037 clr  x86   C:\Users\SomeName\.k\runtimes 
    * 1.0.0-beta4-11037 coreclr x64   C:\Users\SomeName\.k\runtimes default 
     1.0.0-beta4-11037 coreclr x86   C:\Users\SomeName\.k\runtimes 

Когда я пытаюсь отлаживать проект в визуальной студии он работает только под бета2 но не под моей пользовательской сборки. Поэтому мне нужно запустить проект вручную с помощью:

k run -r CoreCLR -X64 

И все работает отлично.

Я могу отладить этот запущенный проект в Visual Studio, добавив к нему отладчик, но это не очень хороший опыт. Конечно, это бета-состояние, но, возможно, что-то не так с моей настройкой, и кто-то может мне помочь.

project.json

{ 
"version": "1.0.0-*", 
"dependencies": { 
    "Microsoft.Framework.ConfigurationModel": "1.0.0-beta4-1083", 
    "Microsoft.Framework.ConfigurationModel.Json": "1.0.0-beta4-10837", 
    "Microsoft.Framework.ConfigurationModel.Xml": "1.0.0-beta4-10837", 
    "System.Collections": "4.0.10-beta-22613", 
    "System.Collections.Concurrent": "4.0.10-beta-22613", 
    "System.Collections.NonGeneric": "4.0.0-beta-22613", 
    "System.Collections.Specialized": "4.0.0-beta-22613", 
    "System.ComponentModel": "4.0.0-beta-22613", 
    "System.ComponentModel.Annotations": "4.0.10-beta-22613", 
    "System.ComponentModel.EventBasedAsync": "4.0.10-beta-22613", 
    "System.ComponentModel.TypeConverter": "4.0.0-beta-22613", 
    "System.Diagnostics.Tools": "4.0.0-beta-22613", 
    "System.Diagnostics.TraceSource": "4.0.0-beta-22613", 
    "System.Dynamic.Runtime": "4.0.10-beta-22613", 
    "System.Linq": "4.0.0-beta-22613", 
    "System.Linq.Expressions": "4.0.0-beta-22613", 
    "System.ObjectModel": "4.0.10-beta-22613", 
    "System.Reflection": "4.0.10-beta-22613", 
    "System.Reflection.Emit.ILGeneration": "4.0.0-beta-22613", 
    "System.Reflection.Extensions": "4.0.0-beta-22613", 
    "System.Reflection.Primitives": "4.0.0-beta-22613", 
    "System.Reflection.TypeExtensions": "4.0.0-beta-22613", 
    "System.Runtime": "4.0.20-beta-22613", 
    "System.Runtime.Extensions": "4.0.10-beta-22613", 
    "System.Runtime.Serialization.Json": "4.0.0-beta-22613", 
    "System.Runtime.Serialization.Primitives": "4.0.0-beta-22613", 
    "System.Runtime.Serialization.Xml": "4.0.10-beta-22613", 
    "System.Security.AccessControl": "4.0.0-beta-22613", 
    "System.Security.Claims": "4.0.0-beta-22613", 
    "System.Security.Principal": "4.0.0-beta-22613", 
    "System.Security.Principal.Windows": "4.0.0-beta-22613", 
    "System.Text.RegularExpressions": "4.0.10-beta-22613", 
    "System.Threading": "4.0.10-beta-22613", 
    "System.Threading.AccessControl": "4.0.0-beta-22613", 
    "System.Threading.Tasks": "4.0.10-beta-22613", 
    "System.Threading.Thread": "4.0.0-beta-22613", 
    "System.Threading.ThreadPool": "4.0.10-beta-22613" 
}, 
"frameworks": { 
    "aspnet50": { 
     "dependencies": { 
     } 
    }, 
    "aspnetcore50": { 
     "dependencies": { 
     } 
    } 
} 

Update Я заметил, что Visual Studio разве загружаются соответствующие пакеты, даже когда его показ освежающий, так что я обновленное все так:

kpm restore 

Это улучшенный все на много. Но все же я не могу запустить его правильно в Visual Studio, потому что я получаю исключение загрузки типа при загрузке System.Threading. Запуск вручную по-прежнему не представляет проблемы.

Похоже, мне нужно подождать, пока следующая версия Visual Studio не выйдет, чтобы получить лучший опыт.

Я хотел бы знать, где я получаю исходный код System.Runtime, чтобы проверить, что реализовано в ASPNETCORE50.

+0

Mscorlib существует только для настольных ПК ('aspnet50'). В CoreCLR ('aspnetcore50') он был разбит во многих небольших пакетах, таких как' System.Runtime' и 'System.Threading'. Что вы подразумеваете под «работает только под бета-версией 2, но не под моей пользовательской сборкой»? Вы получили сообщение об ошибке? –

+0

В ответ на ваш вопрос, если я получу какие-либо ошибки. Visual Studio говорит мне, что мне нужно сначала установить свою версию во время ее использования. Но когда его не установлено, почему я могу использовать его с k, просто отлично? Я использую dev-версию kvm btw, если это помогает. –

+2

А ... Между Beta2 и Beta4 структура папок изменилась. Публичная версия VS не понимает последней версии. Извините, вы ничего не можете сделать, пока не появится обновленная утилита VS. Если вы используете VS, используйте Beta2 сейчас. –

ответ

0

Между Beta2 и Beta4 структура папок изменилась. Публичная версия VS не понимает последней версии. Извините, вы ничего не можете сделать, пока не появится обновленная утилита VS. Если вы используете VS, продолжайте использовать Beta2 сейчас.

Смежные вопросы