4

I am having issue with my pagemethod + url rewrite.

When using regular URL: http://myweb.com/mypages/abc.aspx

call to the PageMethod works fine.

But when i use a friendly URL : http://myweb.com/abc it does work. No error though.

Any help would be much appreciated.

Murali Bala
  • 1,133
  • 2
  • 18
  • 28

2 Answers2

8

You can set the right path to the aspx file from javascript using the PageMethods.set_path method:

<script type="text/javascript">
   PageMethods.set_path("/mypages/abc.aspx");
</script>

The answer is taken from the official asp.net forum:

http://forums.asp.net/p/1599846/4066920.aspx#4066920

A. Agius
  • 1,211
  • 1
  • 14
  • 28
  • 1
    fyi the linked to forum post says to use `set_path` not `set_page`. `set_path` worked for me while `set_page` did not. – User Nov 29 '12 at 22:04
1

There is a slight typo in Roger's answer that set me on a wrong path and took a long time to figure out so here is the correct code sample for everyone else:

Set the path for the pagemethods in the page before calling page methods:

<script>
   PageMethods.set_path("/foo/bar.aspx");
</script>
Mikko Lassila
  • 116
  • 1
  • 3
  • Yes, you're right! In my case the code worked when I put it into ClientScript.RegisterStartupScript instruction – Wilson Aug 13 '13 at 16:08