2016-12-02 8 views
0

Переделка этого вопроса (жаль тех, кто был в середине прочтения)режим релиза Prism вызывает ошибки

Попытки играть с Prism 6, но я получаю вопрос на все мои компоненты ShellView, когда я работаю в режиме отладки, все в порядке, однако в тот момент, когда я переключаюсь в режим выпуска, я получаю много ошибок.

Error CS0246 The type or namespace name 'BindableBase' could not be found 
(are you missing a using directive or an assembly reference?) 
ShellModule C:\Dev\Prism_Prototype\Source\ShellModule\ViewModels\TitleControlViewModel.cs 

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

The type or namespace name "BindableBase" could not be found, are you missing 
a using directive or assembly reference. 

Вот один из файлов, который идет не так, как пример.

using Prism.Mvvm; 
using ShellModule.ViewModels.Interfaces; 

namespace ShellModule.ViewModels 
{ 
    public class TitleControlViewModel : BindableBase, ITitleControlViewModel 
    { 
     private string _content = "This is my content"; 

     public string Content 
     { 
      get { return _content; } 
      set { SetProperty(ref _content, value); } 
     } 
    } 
} 

И TitleControlView.xaml

<UserControl 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
    xmlns:mvvm="http://prismlibrary.com/" 
    mc:Ignorable="d" 
    mvvm:ViewModelLocator.AutoWireViewModel="true" 
    x:Class="ShellModule.Views.TitleControlView" 
    HorizontalContentAlignment="Stretch"> 
    <UserControl.Resources> 
    </UserControl.Resources> 
    <Grid x:Name="LayoutRoot"> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="Auto"/> 
      <ColumnDefinition Width="100*"/> 
      <ColumnDefinition Width="Auto"/> 
     </Grid.ColumnDefinitions> 
     <Label x:Name="DekLogo" Background="{DynamicResource  SolidColourASMDefaultRed}" Width="180" Height="60"  HorizontalContentAlignment="Center" VerticalContentAlignment="Center"  Grid.Column="0" Padding="1" > 
     <Image Source="{DynamicResource DekLogo}" Height="36" Width="110" /> 
    </Label> 
    <Label x:Name="Notifications" Background="{DynamicResource SolidColourDefaultBackground}" HorizontalContentAlignment="Stretch" Grid.Column="1" Content="{Binding Content}" /> 
    <Label x:Name="SiplaceLogo" Background="{DynamicResource SolidColourBackground}" Width="180" Height="60" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Grid.Column="2" Padding="1"> 
     <Image Source="{DynamicResource Logo}" Height="36" Width="110" /> 
     </Label> 
    </Grid> 

</UserControl> 

ответ

0

решаемые свою собственную проблему после игры вокруг немного больше.

По какой-то причине (возможно, во время рефакторинга) мои ссылки были испорчены в режиме выпуска. Прошли и удалили все пакеты nuget, которые я использовал для Prism и Ninject, а затем переустановили все пакеты, и вот проблема была исправлена.

По-прежнему не знаю, почему это произошло в первую очередь.