0

私はMVCにまったく慣れていません。WebとWindowsの両方で動作するアプリケーションを開発する計画があります。私の懸念は、.netのMVCがWindowsアプリケーションと互換性があるかどうかです。

はいの場合、以下のような条件に基づいて、WindowsフォームまたはWebページでactionresultを返すことは可能ですか?

public actionresult Index()
{
  if(some condition)
  {
    return View("webpage.html");
  }
  else
  {
    return View("Webform");
  }
}/* code may note be having exact syntax. Just for understanding purpose.

このようなアプリケーションを開発するための解決策が可能かどうかを教えてください。別の提案をいただければ幸いです。

4

1 に答える 1

0

ActionResultクラスはSystem.Web.Mvcの一部であるため、無関係のWindowsフォームです。これは、さまざまなWeb関連のサブタイプの結果(html、json、リダイレクト、ファイル)をWeb/クライアントの応答ストリームに返すのに役立ちます。

あなたが説明したことを行うには、多くの先行作業と.netへの変更を行う必要があると思います。

代わりに、MVCアプリケーションとWindowsフォーム(またはより適切にはWPF)アプリケーションの両方で共有できるある種の共通リポジトリを作成します。そこにはたくさんの例があります:https ://stackoverflow.com/questions/3175/repository-pattern-tutorial-in-c-sharp

このようにして、ほとんどの作業はリポジトリに送られ、その作業はWindowsフォームアプリとMVCアプリのコントローラーの両方で使用できます。また、代わりにMVVM wpfアプリケーションを構築することをお勧めします。これは、このスタイルがMVCパターンに非常に似ており、リポジトリの再利用性が大幅に向上するためです。

于 2013-02-12T22:48:51.847 に答える