2017-03-23 5 views
0

(私はVS2017とasp.netコアV1.1.1を使用しています) こんにちは、asp.netコア書き換えミドルウェア書き換えない、可能な正規表現の問題

は、私が追加されましたniget経由の.netコアミドルウェアを書き直し、このガイドに従います。

何らかの理由で私のURLが書き換えられていません。 ?私のURLの スラグ=最初のテスト現在/アルバムであり、私はこれは私が(startup.csから)が出ているものです彼らはアルバム/最初のテスト

になりたい:

var options = new RewriteOptions() 
.AddRewrite(@"^(.*)?slug=(.*)", "$1/$2", skipRemainingRules: true) 
.AddRewrite(@"^Albums?slug=(.*)", "Albums/$1", skipRemainingRules: true); 
app.UseRewriter(options); 

あなたが見ることができるように、私は同じ結果を期待している2つのバリエーションを試しています。これは/ギャラリーもありますか?スラグ=最初のテストで、私は両方のために1つのルールを取り除くことができたと思っていました。

答えて

0

だから、私はノブを間違えたようだ。私がする必要があったのは、新しいルートをマップすることでした! Controller/Action/idには、以前の学習のことを思い出させるid =が含まれていないことに気付きました。だからここに私が追加何:

app.UseMvc(routes => 
    { 
     routes.MapRoute(
      name: "default", 
      template: "{controller=Home}/{action=Index}/{slug?}"); 

    }); 

は編集: 新しいルートを追加すると、私の自宅のインデックスを破ったとして、最終的には、オプションを変更しました。