В основном, я создаю портативную библиотеку классов, а также создание кучи ViewModels:Можно ли использовать ICommand в проекте ASP.NET MVC?
public class CustomerViewModel : ViewModelBase
{
public string FirstName { ... } // INPC
public string LastName { ... } // INPC
public string FullName
{
get { return FirstName + " " + LastName; }
}
public ICommand DoFooCommand { get; private set; } // DelegateCommand
private bool CanDoFoo(object parameter) { ... }
private void DoFoo(object parameter) { ... }
}
Это замечательно, если я хочу для многократного использования для WinRT и WPF приложений, но как я могу воспользоваться этим классом для веб-сайт ASP.NET MVC? Кажется, мне нужно просто обернуть все, что делает этот класс, в контроллер. Кроме того, ICommand даже пригодна для приложения ASP.NET MVC?
Я действительно не хочу иметь клиентскую библиотеку JavaScript MVVM, которая является только перекодированной версией моих моделей просмотра.
Ну, вам нужно будет зависеть от сборок WPF, если вы хотите использовать * эту * ICommand. Но он просто предоставляет методы CanExecute и Execute. Итак, с рудиментарного уровня, да, вы можете использовать его в MVC. Подключить его к HTML-интерфейсу, конечно же, нет - это .NET и HTML использует JavaScript. –
Использование плагина mapping knockout.js - действительно отличный способ в основном сэкономить вам усилия на повторное создание ваших моделей просмотра C# в javascript. – Jedediah
MVVM лучше тестируется, чем повторное использование. Этот сценарий потребует выполнения:/ – Will