C# MVVM добавить объекта в модель

355
21 декабря 2016, 00:41

Здраствуйте, не могу разобраться с добавлением объекта в Model.

namespace SnakeGame.Model
{
[DataContract]
public class DataModel
{
    [DataMember]
    public List<Player> Players { get; set; }
    public static string DataPath = "score.dat";
    public DataModel()
    {
        Players = new List<Player>()
        {
            new Player() {Score = 133, Name = "Ivan", Number = 6, Status = Player.ScoreStatus.Use}
        };
    }
    public static DataModel Load()
    {
        if (File.Exists(DataPath)) return DataSerializer.DeserializeItem(DataPath);
        return new DataModel();
    }
    public void Save()
    {
        DataSerializer.SerializeData(DataPath,this);
    }
}
}

Далее на кнопку добавление нового игрока, я делаю так.

 public partial class AddUserControll : UserControl
{
    [DataMember]
    public IEnumerable<Player> Players { get; set; }
    public static DataModel _model;
    public static DataViewModel _viewModel;
    public static string namePlayer;
    private int count = 5;
    public AddUserControll()
    {
        InitializeComponent();
    }
    private void button_Click(object sender, RoutedEventArgs e)
    {
        namePlayer = name.Text;
        var tmp = new Player()
        {
            Score = 0,
            Name = namePlayer,
            Number = count,
            Status = Player.ScoreStatus.Use
        };
        _model.Players.Add(tmp);
        count++;
        try
        {
            _model = Mapper.Map<DataViewModel, DataModel>(_viewModel);
            _model.Save();
        }
        catch (Exception)
        {
        }
    }
}

Вылезает System.NullReferenceException

По MVVM все должно быть правильно, все View наследуются ViewModelBase:INotifyPropertyChanged

READ ALSO
Отправить сообщение Viber программно

Отправить сообщение Viber программно

Как посмотреть запросы в протоколе вайбера при отправке сообщений с десктопной версии для дальнейшей возможности отправлять их программно?

1186
Не все файлы добавляются при создании проекта Visual Studio Installer

Не все файлы добавляются при создании проекта Visual Studio Installer

Хочу создать инсталлятор для своего проекта с помощью Visual Sstudio Installer, но он не все файлы зависимостей добавляетВ проекте используется NuGet

361
реализация Linkedlist + интересная задача

реализация Linkedlist + интересная задача

Есть 4 вида кубиков с разной плотностью, но с одинаковым объемомИз кубиков можно составить столбик и рассчитать силу, с которой они действуют...

388
1 class implements 2 listeners - ошибка

1 class implements 2 listeners - ошибка

Пишу приложение в Android StudioХочу в одном классе реализовать два разных слушателя

462