는 기본적으로, 휴대용 클래스 라이브러리를 생성하고 ViewModels의 무리 만드는 오전 : 나는 WinRT와 WPF 애플 리케이션을위한 재사용에 대해 원하는 경우ASP.NET MVC 프로젝트에서 ICommand를 활용할 수 있습니까?
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) { ... }
}
이 중대하다,하지만 어떻게 내가이 클래스를 이용할 수 ASP.NET MVC 웹 사이트? 어쨌든이 클래스가 컨트롤러로하는 모든 것을 그냥 랩핑해야만하는 것 같습니다. 또한 ICommand는 ASP.NET MVC 응용 프로그램에서도 사용할 수 있습니까?
정말 내 view-models의 recoded 버전 인 클라이언트 측 MVVM javascript 라이브러리를 갖고 싶지 않습니다.
* ICommand를 사용하려면 WPF 어셈블리에 의존해야합니다. 그러나 CanExecute 및 Execute 메서드를 노출하기 만합니다. 그래서 초보적인 수준에서 네, MVC에서 사용할 수 있습니다. HTML 프론트 엔드에 연결하는 것은 물론입니다. 물론 .NET이 아니고 HTML은 JavaScript를 사용합니다. –
knockout.js 매핑 플러그인을 사용하면 javascript에서 C#보기 모델을 다시 만드는 노력을 줄일 수있는 정말 좋은 방법입니다 – Jedediah
MVVM은 재사용 가능성보다 테스트 가능성이 좋습니다. 이 시나리오는 다음을 구현해야합니다./ – Will