Несовместимая ссылка: System.Management 4.0.0.0? - PullRequest
4 голосов
/ 20 ноября 2011

Я создал консольное приложение C # 4.0.Целевой платформой является .Net Framework 4 Профиль клиента.Я хочу посчитать количество ядер в моем процессоре.Для этого я создал следующий класс:

internal class MultiThreading
{
    public int GetNumberOfCores()
    {
        var coreCount = 0;
        foreach (var item in new System.Management.ManagementObjectSearcher("Select * from Win32_Processor").Get())
            coreCount += int.Parse(item["NumberOfCores"].ToString());

        return coreCount;
    }
}

Чтобы этот код работал, ему нужна ссылка на System.Management.Чтобы сделать это в обозревателе решений, я щелкнул правой кнопкой мыши ссылки на мой проект-> Добавить ссылку.Откроется диалоговое окно, в котором можно выбрать System.Management version 4.0.0.0.Диалоговое окно показывает, что я использую 4.0 Framework.Все идет нормально.Я нажимаю «Добавить» и получаю следующее сообщение:

«System.Management, версия 4.0.0.0, Culture = нейтральный, PublicKeyToken = b034543655555» несовместим с клиентским профилем .Net Framework 4.чтобы добавить его, вы должны сначала изменить> цель проекта на совместимую платформу.

В качестве проверки работоспособности я пошел сюда: http://msdn.microsoft.com/en-us/library/system.management.managementobjectsearcher.aspx

... и msdn ясно заявляет, чтоSystem.Management 4.0.0.0 совместим с клиентским профилем .Net Framework 4.

Кто-нибудь может помочь?

Ответы [ 2 ]

1 голос
/ 17 июля 2013

Попробуйте добавить его, используя просмотр и полный путь к DLL

0 голосов
/ 19 октября 2012

Попробуйте изменить Target Framework на .NET Framework 4.

Существуют различия между Профилем клиента и полной платформой.Профиль клиента, хотя и работает в рамках 4, не включает в себя все ссылки на полный.И если вы нацеливаетесь на это, вы говорите, что ваш клиент будет иметь все системные DLL-файлы, на которые есть ссылки в списке «Ссылки».И я думаю, что это неправда в отношении System.Management.

Различия между полной платформой Microsoft .NET 4.0 и профилем клиента

...