これらのファイルの技術的な違いを知る必要があります。どれが最良の選択肢ですか?いつ、なぜそれを使うべきですか?MSDNリンクではなく、人間の答えが必要です。
1 に答える
.ashx
ファイルは、HttpRequests の処理と HttpResponses の変更に使用されます。ほとんどの場合、好きなことをさせることができます。私は、それらが PDF の提供やサーバー側の処理を行ってからリダイレクトするなどの目的で使用されるのを見てきました。詳細については、こちらを参照してください。
.svc
ファイル (質問では言及されていません)は、SOA開発用のMS の新しい Windows Communication Foundation の一部です。WCF は、SOAP、REST、およびその他の優れた機能を多数サポートしています。
.asmx
ファイルは、SOAP サービスをホストするための古い手段です。asmx.cs
多くの場合、サービスの背後にある実際のメソッドを含むファイル (または .vb)が付随しています。詳細については、こちらを参照してください。これは従来のテクノロジであり、新しい開発では代わりに WCF を使用することをお勧めします。
[WebMethod]
属性は、 によってホストされる SOAP サービスで表示されるメソッドを示すために使用されますasmx
。詳細については、こちらを参照してください。
拡張機能は、.axd
さまざまな目的で使用される生成された Web サービスによって使用されます。(たとえば、MVC3 はaxd
Web サービスを使用して MS 固有の JavaScript を提供します) ファイルを作成することはないと思いますがaxd
、私は間違っている可能性があります...少なくとも私は作成したことがありません。詳細については、こちらを参照してください。
最適なオプションはどれですか?
それらは、さまざまな問題を解決するために使用されるさまざまなツールです。それぞれをいつ、どのような理由で使用する必要があるかは、達成しようとしている仕事によって異なります。Web アプリケーションの動作の下位レベルの処理は、ashx
ファイルを使用して実現できます。より標準化されたサービスを提供したい場合は、WCF とsvc
ファイルを使用することをお勧めします。あなたが行っているタスクに関する詳細情報を提供してください。1 つを選択するのに役立ちます。