Перейти к основному контенту
Поддержка
Войдите с помощью учетной записи Майкрософт
Войдите или создайте учетную запись.
Здравствуйте,
Выберите другую учетную запись.
У вас несколько учетных записей
Выберите учетную запись, с помощью которой нужно войти.

Введение

Переносной библиотеки классов проблемы могут возникнуть после установки Microsoft Visual Studio 2012 обновление 2. В данной статье описываются эти проблемы и возможные пути их устранения.

Проблема 1

Симптомы

При использовании ресурсов для построения проекта переносимой библиотеки классов после установки Visual Studio 2012 обновления 2может появиться следующие сообщения об ошибках:

«System.Type» не содержит определение для 'Сборка' и 'Сборка', принимающий первый аргумент типа 'System.Type» метод расширения может быть найден (пропущена с помощью директивы или ссылка на сборку?)

Примечание. Эта ошибка возникает при использовании Microsoft Visual C#.

«Сборка» не является членом «System.Type»

Примечание. Эта ошибка возникает при использовании Microsoft Visual Basic.

Проблема связана с одной из следующих платформ предназначен в проекте:

  • Microsoft .NET Framework 4.5 и .NET для приложений для магазина Windows

  • .NET Framework 4.5 и Windows Phone 8

  • .NET Framework 4.5, .NET для приложений для магазина Windows и Windows Phone 8


Временное решение

Чтобы обойти эту проблему, исправьте созданный конструктором код в файле ресурсов. Чтобы сделать это, дважды щелкните сообщение об ошибке и выполните следующие действия:

Для C#

  1. Добавьте следующие директивы using:

    using System.Reflection;
  2. Найдите следующий код:

    typeof(Resource1).Assembly

    Замените код на следующий код:

    typeof(Resource1).GetTypeInfo().Assembly

Ниже приведен пример этой проблемы:

        /// <summary> 
/// Returns the cached ResourceManager instance used by this class.

/// </summary>

[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]internal static global::System.Resources.ResourceManager ResourceManager { get {

if (object.ReferenceEquals(resourceMan, null)) {

global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("PortableClassLibrary2.Resource1", typeof(Resource1).Assembly);

resourceMan = temp;

}

return resourceMan;
}
}


Visual Basic

  1. Добавьте следующие директивы using:

    Imports System.Reflection;
  2. Найдите следующий код:

    GetType(Resource1).Assembly

    Замените код на следующий код:

    GetType(Resource1).GetTypeInfo().Assembly

Ниже приведен пример этой проблемы:

        '''<summary>
''' Returns the cached ResourceManager instance used by this class.

'''</summary>

<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _

Friend Shared ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager

Get

If Object.ReferenceEquals(resourceMan, Nothing) Then

Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("PortableClassLibrary1.Resource1", GetType(Resource1).Assembly)

resourceMan = temp

End If

Return resourceMan

End Get

End Property


Проблема 2

Симптомы

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

«System.Net.HttpStatusCode» тип определен в сборке, на которую нет ссылки. Необходимо добавить ссылку на сборку "System.Net, версия = 2.0.5.0, язык и региональные параметры нейтрального PublicKeyToken = = 7cec85d7bea7798e Retargetable = Yes.


Невозможно неявным образом преобразовать тип «System.Net.HttpStatusCode» в "System.Net.HttpStatusCode [%programfiles%\Reference Assemblies\Microsoft\Framework\. NETPortable\v4.5\Profile\Profile78\System.Net.Primitives.dll] "


Обратите внимание, что проблема связана с одной из следующих платформ предназначен в проекте:

  • .NET Framework 4.5 и Windows Phone 8

  • .NET Framework 4.5, .NET для приложений для магазина Windows и Windows Phone 8


Причина

Эта проблема возникает, поскольку обновления 2 Visual Studio 2012 был установлен после установки Windows Phone Software Development Kit (SDK) 8.0. Таким образом были удалены следующие файлы:

  • %programfiles%\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.5\Profile\Profile49\System.Net.dll

  • %programfiles%\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.5\Profile\Profile49\System.ServiceModel.dll

  • %programfiles%\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.5\Profile\Profile78\System.Net.dll

  • %programfiles%\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.5\Profile\Profile78\System.ServiceModel.dll


Временное решение

Чтобы устранить эту проблему, запустите программу восстановления Visual Studio 2012. Чтобы сделать это, выполните следующие действия.

  1. Нажмите кнопку Пуск, выберите команду Панель управления, выберите пункт программыи выберите пункт программы и компоненты.

  2. Щелкните правой кнопкой мыши версию Visual Studio 2012, установки и нажмите кнопку Изменить.

  3. Когда откроется мастер установки Visual Studio 2012, нажмите кнопку " восстановить ".

Примечание. Если настроить новую среду разработчика, чтобы избежать этой проблемы, следует установить Visual Studio 2012 обновление 2 перед установкой пакета SDK Windows Phone 8.0.

Статус

Корпорация Майкрософт подтверждает, что это проблема продуктов Майкрософт, перечисленных в разделе "Относится к".

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?
После нажатия кнопки "Отправить" ваш отзыв будет использован для улучшения продуктов и служб Майкрософт. Эти данные будут доступны для сбора ИТ-администратору. Заявление о конфиденциальности.

Спасибо за ваш отзыв!

×