2015-07-05 1 views
3

после обновления с бета-версии aspnet до бета5 У меня есть решение с несколькими проектами библиотеки классов и одним веб-приложением. Я получаю всевозможные ошибки. Итак, я начал работу над созданием нового проекта веб-приложения с пользователями/идентификатором/ef. Я проработал все вопросы, связанные с обновлением этого проекта до бета5, и он работает. Затем я добавил новый проект библиотеки классов для этого решения, и я получаю те же ошибки, что и с другим более сложным решением.Кажется, не удается получить проекты библиотеки классов для сборки после обновления aspnet 5 от бета-версии 4 до бета5

список DNVM:

Active Version  Runtime Architecture Location     Alias 
    ------ -------  ------- ------------ --------     ----- 
    1.0.0-beta4 clr  x64   C:\Users\Joe\.dnx\runtimes 
    1.0.0-beta4 clr  x86   C:\Users\Joe\.dnx\runtimes 
    1.0.0-beta4 coreclr x64   C:\Users\Joe\.dnx\runtimes 
    1.0.0-beta4 coreclr x86   C:\Users\Joe\.dnx\runtimes 
    1.0.0-beta5 clr  x64   C:\Users\Joe\.dnx\runtimes 
* 1.0.0-beta5 clr  x86   C:\Users\Joe\.dnx\runtimes default 

мое решение имеет этот global.json:

{ 
    "projects": [ "src", "test" ], 
    "sdk": { 
    "version": "1.0.0-beta5" 
} 

мой класс библиотека имеет это project.json

{ 
    "version": "1.0.0-*", 
    "description": "", 
    "authors": [ "" ], 
    "tags": [ "" ], 
    "projectUrl": "", 
    "licenseUrl": "", 

    "dependencies": { 
"Microsoft.Framework.Configuration.Abstractions": "1.0.0-beta5", 
"System.Runtime": "4.0.20-beta-23019" 


    }, 

    "frameworks": { 
"dnx451": { }, 
"dnxcore50": { 
    "dependencies": { 
    "System.Collections": "4.0.10-beta-3019", 
    "System.Linq": "4.0.0-beta-23019", 
    "System.Threading": "4.0.10-beta-23019", 
    "Microsoft.CSharp": "4.0.0-beta-23019" 

    } 
    } 
} 
} 

У меня есть один файл класса в проекте библиотеки классов:

using Microsoft.Framework.Configuration; 
using System; 

namespace myapp.Configuration 
{ 
public static class ConfigurationExtensions 
{ 

    public static string GetOrDefault(this IConfiguration config, string key, string defaultIfNotFound) 
    { 
     string result = config.Get(key); 

     if (string.IsNullOrEmpty(result)) { return defaultIfNotFound; } 

     return result; 
    } 

    public static int GetOrDefault(this IConfiguration config, string key, int defaultIfNotFound) 
    { 
     string result = config.Get(key); 

     if (string.IsNullOrEmpty(result)) { return defaultIfNotFound; } 

     return Convert.ToInt32(result); 
    } 

    public static bool GetOrDefault(this IConfiguration config, string key, bool defaultIfNotFound) 
    { 
     string result = config.Get(key); 

     if (string.IsNullOrEmpty(result)) { return defaultIfNotFound; } 

     return Convert.ToBoolean(result); 
    } 

    public static Guid GetOrDefault(this IConfiguration config, string key, Guid defaultIfNotFound) 
    { 
     string result = config.Get(key); 

     if (string.IsNullOrEmpty(result)) { return defaultIfNotFound; } 
     if (result.Length != 36) { return defaultIfNotFound; } 

     return new Guid(result); 
    } 
} 
} 

, когда я пытаюсь построить я получаю многочисленные ошибки, подобные этим:

Ошибка CS0518 предопределенного типа «System.Void» не определен или импортировать ClassLibrary1.DNX 4.5.1 Ошибка CS0518 предопределенного типа «System.Object 'не определен или не импортирован ClassLibrary1.DNX 4.5.1 Ошибка CS0518 Предопределенный тип' System.String 'не определен или не импортирован ClassLibrary1.DNX 4.5.1 Ошибка CS0433 Тип' Guid 'существует в обоих' mscorlib, Version = 4.0 .0.0, Культура = нейтральная, PublicKeyToken = b77a5c561934e089 'и' System.Runtime, Version = 4.0.20.0, Culture = нейтраль, PublicKeyToken = b03f5f7f11d50a3a '

Любые идеи, как решить эти ошибки

UPDATE с этой минимальной библиотеки классов методом проб и ошибок я обнаружил, что если я удалил зависимость для System.Runtime от project.json, то эта простая библиотека классов будет строить.

Так что, чтобы уточнить проблему, кажется, после обновления до бета5 от бета4 теперь любой проект, который имеет какую-либо из этих конкретных зависимостей (и, возможно, другие, но это точно), не будет строить и получит эти ошибки о примитивных типах.

"System.Runtime": "4.0.20-beta-23019" 
"System.ComponentModel.Annotations": "4.0.10-beta-23019" 
"System.Xml.XmlDocument": "4.0.0-beta-23019" 

, к сожалению, мне нужны некоторые из них для моего кода для работы

кажется, что что-то необычное в цепи пакет зависимостей

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

у кого-то еще была удача в переносе многопроектного решения от бета4 до бета5?

ответ

1

ОК, для моих целей я решил проблему сборки, отбросив цель для dnx451 в каждом из моих проектов, а затем настроил мое веб-приложение, чтобы использовать конкретную версию DNX версии 1.0.0-beta5 .NET Core. это в проекте.json для каждого проекта, который я удалил «dnx451»: {}, из раздела frameworks, а в свойствах для веб-проекта я указал версию DNX для использования.

Я подозреваю, что есть какая-то упаковка snafu, которая вызывает все ошибки dnx451, которые у меня были.

Теперь мое предположение, если оно работает под dnxcore50, тогда оно будет работать позже на dnx451/desktop framework. то есть я предполагаю, что dnxcore50 является подмножеством рамок рабочего стола, и на данный момент это все, что мне действительно нужно для работы с моим приложением. Я полагаю, что я могу безопасно отказаться от поддержки настольной инфраструктуры сейчас и добавить ее позже после того, как упакованный snafu очистится.

путем таргетинга только на dnxcore50 во всех моих файлах project.json. Я смог пройти все ошибки и построить и запустить мое решение без ошибок.

+0

Мне удалось добавить dnx451 в мои проекты и решить ошибки, переместив зависимости в нужное место на основе этого вопроса. Http://stackoverflow.com/questions/31502057/confused-about-dependencies-in-project-json –

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