デスクトップと Web の両方の実装を持つアプリケーションを開発します。機能はほとんど同じであるため、単一ソース ソリューションが必要です。このアプリケーションは、CAD アプリケーション用のプロジェクトおよび図面管理ツールです。ブラウザで実行する最も重要な理由は、プロジェクト データと図面を交換するためのコラボレーション ツールとしてアプリケーションを使用するためです。
ブラウザーでホストされるアプリケーションの問題は、それらがブラウザーで実行されるため、適用されるルールに制限されることです (別の返信で述べたように、新しいウィンドウと信頼の制限など)。
私たちのアプリケーションは主に管理されたイントラネットとエクストラネットで使用されるため、私たちのソリューションで管理できると考えています。私たちのアプリケーションは完全な信頼で実行され、独自の証明書で署名されているため、作業が少し楽になります。
利点はもちろん、クリック ワンス インストール (および更新メンテナンス) と、ユーザーが Web サイト経由でアプリケーションを「どこにでも」インストールできることです (または、もちろん、この場合は .NET と証明書が必要です)。
私たちが直面した最大の問題は、解決できる信頼、ナビゲーション、ダイアログに関するものでした。もう 1 つの問題は、アプリケーションが Web サービスを使用してデータにアクセスすることです。クライアントと Web サービス間のバインディングは、デフォルト (組み込み) では非常に困難ですが、これを克服する方法も見つけました。
アプリケーションをブラウザ外で実行することもできます (ただし、ブラウザ経由でインストールします)。しかし、私たちのプロダクト オーナーは現在、ブラウザ エクスペリエンスを望んでいます。これは、ユーザーにとってより理にかなっているからです。Web サイト経由でインストールし、ブラウザの外部でアプリケーションを実行する場合、ブラウザが要求する制限は少なくなります。