У меня есть небольшое приложение WPF, которое использовалось для компиляции просто отлично, но больше не существует. Я не могу сказать, в какой момент он прекратил строить. В один прекрасный день он просто отлично работал, а следующий - нет.
Здесь структура проекта:
Других проектов или внешних ссылок, кроме стандартных DLL.net, нет.
Здесь пользовательский элемент управления, в котором возникла проблема:
<UserControl x:Class="TimeRecorder.HistoryUserControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:TimeRecorder.ViewModel"
xmlns:framework="clr-namespace:TimeRecorder.Framework"
mc:Ignorable="d" Height="Auto" Width="Auto" Padding="5">
<UserControl.Resources>
<local:HistoryViewModel x:Key="ViewModel"/>
<framework:BoolToColorConverter x:Key="ColorConverter"/>
</UserControl.Resources>
<StackPanel DataContext="{StaticResource ViewModel}">
И вот ошибка, которую я получаю:
Обратите внимание, что это не только один файл на скриншоте, но и все ссылки, которые я добавляю подобным образом в xaml во всех файлах пользовательского управления/окна в этом проекте.
Итак, файл есть, пространство имен в файле верное, имя пространства/класса в файле xaml (насколько я понимаю) правильно. Я получаю intellisense, когда я вхожу в xaml, поэтому он находит файлы в порядке, но не тогда, когда компилируется.
Наиболее распространенным решением для этого в других сообщениях была версия .net framework. В настоящее время он установлен .Net Framework 4 для моего основного и тестового проекта. Полная версия не профиль клиента.
Вот что я думаю, что испортил: В диспетчере конфигурации оба проекта имеют свою платформу для любого процессора, но в какой-то момент, когда пытались решить эту проблему, я заметил, что основной проект был установлен на x86, а тестовый проект был установлен в Any CPU. Поэтому я добавил любой процессор вручную для основного проекта в диспетчере конфигурации. Однако, честно говоря, я не знаю, правильно ли я это сделал или даже если я это сделаю. Итак, как дополнительный вопрос, есть ли способ reset менеджера конфигурации к состоянию по умолчанию? Будет ли это иметь что сказать для главной проблемы? Я не знаю, был ли основной проект всегда установлен на x86 или нет или я каким-то образом изменил его на x86, а затем он сломался. Как уже упоминалось, этот проект компилируется на некоторое время.
Любые предложения? Я отвечу на более подробные вопросы о коде или что-то еще, как вы их просите, вместо того, чтобы болтать здесь:)