ASP.NET中的URL映射和WebMethods错误

时间:2015-11-11 16:59:01

标签: javascript c# asp.net asp.net-mvc url-rewriting

我尝试使用this tutorial重写/ URL映射我的ASP.NET网页。但是,我遇到的问题是,当我通过新网址访问网页时,该页面的Web方法/ PageMethods不会被加载/触发。

的Global.asax:

void Application_Start(object sender, EventArgs e)
{
            BundleConfig.RegisterBundles(BundleTable.Bundles);
            AuthConfig.RegisterOpenAuth();
            RouteConfig.RegisterRoutes(RouteTable.Routes);

            //The code that maps the page
            RouteTable.Routes.MapPageRoute("", "projects/{id}", "~/CreateProject.aspx");
}

该网页的Javascript文件中的PageMethod:

function loaddata() {

    PageMethods.set_path('/CreateProject.aspx');
    PageMethods.LoadProjectData(onSuccess, onFailure);

    function onSuccess(val) { }
    function onFailure() { }
}

如您所见,我已正确映射它们。

好消息:现在可以通过此链接访问该网页,因为它应该 - > http://localhost:19568/projects/12320012

坏消息:该页面中未加载任何内容。我的意思是图像,脚本等。这是一个控制台截图

enter image description here

我做错了什么?为什么页面和内容没有正确加载?

1 个答案:

答案 0 :(得分:0)

好的,所以我发现了问题。问题实际上非常愚蠢。虽然我不知道背后的原因,但我知道如何解决这个问题。

基本上我必须添加' /'在我导入网页的每个资源前面反斜杠。例如:

<强>此前:

<script src="JS/newproject.js"></script>

<强>更新

<script src="/JS/newproject.js"></script>

这应该针对您导入的任何图像,C​​SS,脚本等进行。希望它可以帮助某人!