4

わかりました、これに適切なタイトルを付けるという大きな問題がありました。その言い訳です。

とにかく、私はゆっくりとWebとASP.NETをもう一度見始めました。私は、C#開発者ですが、過去5年ほどは主にWindowsアプリケーションを使用してきました。そのため、Web自体に触れたことがないわけではありません。時間ですが、これはWebサービス(Restfullおよび醜いSOAPサービス)と同じです。私はより多くの「生の」Web要求にも取り組んできました。

しかし、私はその間ずっとIISまたはASP.NETを使用していません。

私がやりたいのは、「残りの部分のように」、つまり「Restfullurls」というタイトルで最もよく説明できるURLスタイルを使用するWebページです。ほとんどの人がそのようなURLを次の観点から考えていると思うからです。

http://example.com/item/
http://example.com/item/23/

などなど。そのように見える必要はありませんが、代わりにそのようなURLを使用したいと思います

http://example.com/item?id=23

私はサブテキストがこれを行うことを知っていますが、コードベースでそれを見つけることができませんでした。

今、私が知る限り、いくつかのIHttpHandlerを実装することができますが、少なくとも私が見た例では、ページソースをコードに書き戻し、マスターページなどをまだ持っています。私自身のすべてのことについて、私は本当にちょっとhttp://example.com/item/23/http://example.com/itemにルーティングし、ID23のアイテムを要求したいと思っています...

これがまったく理にかなっていることを願っています>。<...そして誰かが私が見つけたものよりも良い例を手元に持っていることを願っています。

4

4 に答える 4

3

これは、ルーティングを使用して実現できます。ここには、MSDNブログの.Netエンドポイント-ルートを使用してWCFWebHttpサービスを作成するためのリンクがあります。

于 2012-01-21T21:30:49.787 に答える
3

asp.net/IISを確認している場合、確認するもう1つのオプションはASP.NetMVCです。RESTfulサービスを作成するのは非常に簡単です。

チュートリアルは次のとおりです。

http://www.codeproject.com/Articles/233572/Build-truly-RESTful-API-and-website-using-same-ASP

于 2012-01-21T23:48:41.820 に答える
2

だからここにあなたのオプションがあります-

IIS7を使用する.net3.5sp1フレームワークの場合、asp.netルーティング機能を使用してMVCスタイルのURLを指定し、ここで説明するようにIRouteHandlerインターフェイスを実装するカスタムルートハンドラーを作成する必要があります。方法:Webフォームでルーティングを使用してルートルールを登録するGlobal.asaxのApplication_Startメソッド。あなたの例では、このようなルートを登録できます

    routes.Add("ItemRoute", new Route
    (
    "item/{itemId}", 
    new CustomRouteHandler("~/item.aspx")
    ));  

次に、リクエストコンテキストアイテムをチェックすることで、ルーティングされたitem.aspxページのitemIdにアクセスできます。

    requestContext.HttpContext.Items["itemId"]

.net Framework 4 MVCの場合、カスタムハンドラーを作成する必要はなく、直接使用できます。

    routes.MapPageRoute("ItemRoute", "item/{itemId}", "~/item.aspx");

global.asaxApplication_Startメソッドで。

このリンクは、ルーティングについて詳しく説明しています

于 2012-01-22T17:03:04.397 に答える
1

これを実現する方法は、URL書き換えを使用することです。

Webアプリケーションをインターネットインフォメーションサービス7.xでホストすることを計画している場合は、IISURL書き換えモジュールを利用できます。

URLの書き換えとは、わかりやすいURLを、プログラミングに適したGETパラメータの検査に適した、使いにくい一般的なURLにマッピングすることです。

例えば:

http://yourdomain.com/item/48 => http://yourdomain.com/Items.aspx?Id=48
于 2012-01-21T22:23:12.670 に答える