Ведение частного набора и общедоступного получения доступа к свойству во ViewModel и Model - PullRequest
3 голосов
/ 13 августа 2010

Итак, у меня в настоящее время есть класс, подобный этому, в моей ViewModel:

namespace ViewModel
{
  public sealed class MyClass
  {
     public static bool IsInMode
     {
       get;
       private set;
     }

  }
}

Способ настройки наших сборок заключается в том, что представление может обращаться к модели представления и модели, но модель представления может обращаться только к модели, а модель может обращаться только к себе.

Мне нужен доступ к этому IsInMode свойству из модели. Я знаю, что свойство IsInMode будет инициализировано при запуске приложения и никогда не должно меняться после этого. Моя мысль до сих пор состоит в том, чтобы создать еще один класс на уровне модели, который имеет get; private set; в переменной IsInMode, и создать экземпляр этого объекта в MyClass на уровне модели представления, а затем, когда программа gets свойство IsInMode в viewmodel, оно возвращает состояние этого объекта Model.

Это лучший способ решить эту проблему?

Проблема в том, что я хочу, чтобы любой другой класс не изменял состояние этого режима при сохранении доступа на уровне модели и выше. Я также хотел бы сохранить доступ к свойству вне класса ViewModel.

...