1

私はアプリケーションを持っていますが、書き換えルールを適用しないと魅力的に機能します。ルールを適用すると (同じアドレスを指定しても) pagemethod にアクセスできません。js ファイル内で pagemethod を呼び出します。ページを更新するように動作し、page_load イベントのみが発生します。Page.IsPostback は常に false を返します。

ちなみに関連するならマスターページを使ってます。

Web 構成、urlrewrite ルール

<rewriter>
<rewrite url="~/(.+).aspx" to="~/Forms/$1.aspx" />
</rewriter>

HTTP モジュール

  <httpModules>
  <add type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter" name="UrlRewriter" />
</httpModules>

pagemethods に到達しようとする js 関数

<script>
PageMethods.displayPages(a, CallSuccess, CallFailed);
</script>

ページメソッド

 [System.Web.Services.WebMethod]
public static string displayPages(string a)
{
    response.write(a);
}

これらは私が試したもので、うまくいきませんでした:

1- Pagemethods.set_path("/forms/Default.aspx"); を追加しました。Jsに

2-同じルールをweb.configに追加しました(そのように機能しません)

<rewriter>
<rewrite url="~/Forms/(.+).aspx" to="~/Forms/$1.aspx" />
</rewriter>

3-マスターページのPage_loadの下にコードを追加しました

form1.Action = Context.Request.RawUrl;

どんな提案も素晴らしいでしょう。助けてくれてありがとう。

4

0 に答える 0