Microsoftは2つのツールを提供しており、それらは特定の問題を解決すると考えられていると思います。だから私の質問は:私が1つまたは別の技術を選択するようになるキーポイントは何ですか?
サブ質問として、C#とデスクトップアプリケーションについては十分な知識があるが、Webアプリケーションについては経験がない場合、ASP.NetMVCの学習曲線はどのようになりますか。
Microsoftは2つのツールを提供しており、それらは特定の問題を解決すると考えられていると思います。だから私の質問は:私が1つまたは別の技術を選択するようになるキーポイントは何ですか?
サブ質問として、C#とデスクトップアプリケーションについては十分な知識があるが、Webアプリケーションについては経験がない場合、ASP.NetMVCの学習曲線はどのようになりますか。
アプリケーションが任意のプラットフォームで動作することを期待する場合は、MVCを選択してください。Silverlightは、Silverlightをサポートするプラットフォームでのみ機能します。つまり、モバイルはありません。私はあなたのことを知りませんが、それは私を心配するでしょう。
どちらも優れたプラットフォームであり、WPFを含めて両方を使用しています。ただし、Silverlightは、将来、コミュニティ/Microsoftのサポートをあまり受けない可能性があります。したがって、これを意思決定プロセスに織り込む必要があります。一方、MVCは、開発コミュニティとMicrosoftの両方から多大なサポートを受けています。さらに、SilverlightよりもMVCの才能を見つける方が簡単であるというのが私の経験です。
Webの経験がまったくないかほとんどないため、MVCの学習曲線は少し難しいかもしれません。デスクトップエクスペリエンスがWindowsフォームの場合、XAMLの学習曲線のため、Silverlightへの移行も困難になります。また、Silverlightルートは、Metro XAML / C#スタックへの移行が重要な場合に役立つ場合があります。
私があなたの立場にあり、2つの間で決定を下さなければならなかった場合、私はMVCを選択します。
MVCに関しては、学習リソースは優れています。チュートリアルから始めます。これらは、MicrosoftによるMVCの実装を理解するのに役立ちますが、Webサイト開発(HTML、CSS、JavaScript)自体に関してはあまり役に立ちません。
ただし、アプリケーションはIE9の社内でのみ使用され、XAMLの経験があるので、Silverlightを使用します。