var system32Folder = Environment.GetFolderPath(Environment.SpecialFolder.System);
ProcessStartInfo psiOpt = new ProcessStartInfo("cmd.exe", string.Format("/c {0}\\ping.exe 192.168.1.{1}", system32Folder , Pc))
Если C:\Users\...\bin\Debug скопировать на раб стол, то все ок.
у меня нет ни какой папки Release
Distribution - the action of sharing something out among a number of recipients.
Дистрибуция - действие для разделения чего-либо большому количеству получателей.
Программа полностью бесплатная, программа бесплатная но имеет платные функции, единоразовая плата, ежемесячная плата и т. д.
Список List использовать уже не вариант, очень много переписывать)
public void Test(int[] arr); // сюда может прийти только массив
public void Test(IEnumerable<int> list); // а сюда может прийти и массив, и список. Использовать его через foreach
public void Test(ICollection<int> list); // а тут можно добавлять элементы, есть свойство Count
оно уже автосвойство и потребляет память?
class Test
{
private int a;
private int b;
public int A { get { return a; } }
public int B { get { return b; } }
public int Sum { get { return a + b; } }
public int Auto { get; set; }
}
<Auto>k__BackingField
). Количество свойств (как и методов) не увеличивают потребление памяти экземпляра класса. Просто нужно помнить, что при использовании автосвойства создаётся переменная.
Вьюмодель подготавливает модель для показа через представление. В простых случаях модель может являться вьюмоделью. Обычно вьюмодель реализует INotifyPropertyChanged, а модели это не обязательно, но тоже можно. Например, класс из БД - модель. Её можно сразу показывать в представлении, но чаще делают вьюмодель, основанный на модели (но не наследующийся от неё), которая и реализует INotifyPropertyChanged. У меня обычно есть абстрактные классы BaseViewModel (с INotifyPropertyChanged) и BaseEntityViewModel со свойством IsChanged и с методами Add/Edit/Delete или Save.
Представление (View, в файлах xaml) показывает либо представление сущности, либо представление одной страницы (или части страницы). Представление связывается с вьюмоделью с помощью биндингов.
Файлы .xaml.cs (файлы поддержки xaml, они же code behind) предназначены для кода, отвечающего только представление. Обычно удобнее использовать биндинг для получения данных из вьюмодели, но иногда не получается, и тогда приходится делать код в .xaml.cs. Но я стараюсь оставлять эти файлы пустыми.
Вьюмодель должна представлять из себя описание какой-то вещи, какой-то сущности. Для вас хорошо сделать вьюмодель DevViewModel (или DevVm), описывающий один элемент списка. В некоторых случаях нужна отдельная вьюмодель для списка (DevListModel ), но, я думаю, вам она не нужна. У вас уже есть вьюмодель окна MainWindowViewModel (можно писать компактнее MainWindowVm), в ней и находится список элементов.
Бизнес-логику работы с пользователем лучше выполнять во вьюмодели (с помощью команд и биндингов), но часть логики переносится в триггеры и в конвертеры.
Кстати, MainWindowViewModel можно создать тоже через xaml:
В таком случае в xaml студия будет подсказывать члены датаконтекста в биндингах.