asp.net redirect fails on undefined id












0















On the test site, after the user logs in, the redirect fails.



The route is being redirected from



http://localhost:56380/Account/Logon



to



http://localhost:7000/Account/undefined



which gives a 404.



The user is going directly to the login page, so the returnUrl is blank.



DestinationPageUrl is blank.



I find that



RouteData.Route.Url is set to "{controller}/{action}/{id}"
So I think the id is undefined somehow.



On the production site, I can't trace into the server code, but from F12 it looks like it is going to



https://exampledomain.net/Account/



which then goes to



https://exampledomain.net



and that works.



Searching, I found documentation on how to set up the route "{controller}/{action}/{id}" but nothing about how ID gets populated or how to debug it.










share|improve this question



























    0















    On the test site, after the user logs in, the redirect fails.



    The route is being redirected from



    http://localhost:56380/Account/Logon



    to



    http://localhost:7000/Account/undefined



    which gives a 404.



    The user is going directly to the login page, so the returnUrl is blank.



    DestinationPageUrl is blank.



    I find that



    RouteData.Route.Url is set to "{controller}/{action}/{id}"
    So I think the id is undefined somehow.



    On the production site, I can't trace into the server code, but from F12 it looks like it is going to



    https://exampledomain.net/Account/



    which then goes to



    https://exampledomain.net



    and that works.



    Searching, I found documentation on how to set up the route "{controller}/{action}/{id}" but nothing about how ID gets populated or how to debug it.










    share|improve this question

























      0












      0








      0








      On the test site, after the user logs in, the redirect fails.



      The route is being redirected from



      http://localhost:56380/Account/Logon



      to



      http://localhost:7000/Account/undefined



      which gives a 404.



      The user is going directly to the login page, so the returnUrl is blank.



      DestinationPageUrl is blank.



      I find that



      RouteData.Route.Url is set to "{controller}/{action}/{id}"
      So I think the id is undefined somehow.



      On the production site, I can't trace into the server code, but from F12 it looks like it is going to



      https://exampledomain.net/Account/



      which then goes to



      https://exampledomain.net



      and that works.



      Searching, I found documentation on how to set up the route "{controller}/{action}/{id}" but nothing about how ID gets populated or how to debug it.










      share|improve this question














      On the test site, after the user logs in, the redirect fails.



      The route is being redirected from



      http://localhost:56380/Account/Logon



      to



      http://localhost:7000/Account/undefined



      which gives a 404.



      The user is going directly to the login page, so the returnUrl is blank.



      DestinationPageUrl is blank.



      I find that



      RouteData.Route.Url is set to "{controller}/{action}/{id}"
      So I think the id is undefined somehow.



      On the production site, I can't trace into the server code, but from F12 it looks like it is going to



      https://exampledomain.net/Account/



      which then goes to



      https://exampledomain.net



      and that works.



      Searching, I found documentation on how to set up the route "{controller}/{action}/{id}" but nothing about how ID gets populated or how to debug it.







      asp.net routing routes






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 21 '18 at 22:12









      BWhiteBWhite

      121110




      121110
























          2 Answers
          2






          active

          oldest

          votes


















          0














          Is your id set to UrlParameter.Optional ?






          share|improve this answer
























          • Welcome to SO! Thanks for answering.

            – BWhite
            Nov 23 '18 at 5:05











          • I think so. Is that good? RegisterRoutes contains this line: routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with parameters new { controller = "Home", action = "Index", id = UrlParameter.Optional } ); // Parameter defaults

            – BWhite
            Nov 23 '18 at 5:06













          • Optional doesn't appear to me to be related. It is only used on the way in to set variable values from the URL path. It doesn't seem to me to be used on a redirect. Am I missing something?

            – BWhite
            Nov 23 '18 at 5:31



















          0














          The issue was an error in the javascript (caused by correcting lint "errors").

          It was



             var returnUrl = $("#hf-account-returnurl").val();
          if (returnUrl == null)


          Lint complained about the == and recommended changing it to ===



             if (returnUrl === null)


          $("#hf-account-returnurl").val() returns undefined if it isn't defined. This was the clue that finally led us to look at the JS code.

          Undefined == null but it doesn't === null.






          share|improve this answer























            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53421171%2fasp-net-redirect-fails-on-undefined-id%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            2 Answers
            2






            active

            oldest

            votes








            2 Answers
            2






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            Is your id set to UrlParameter.Optional ?






            share|improve this answer
























            • Welcome to SO! Thanks for answering.

              – BWhite
              Nov 23 '18 at 5:05











            • I think so. Is that good? RegisterRoutes contains this line: routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with parameters new { controller = "Home", action = "Index", id = UrlParameter.Optional } ); // Parameter defaults

              – BWhite
              Nov 23 '18 at 5:06













            • Optional doesn't appear to me to be related. It is only used on the way in to set variable values from the URL path. It doesn't seem to me to be used on a redirect. Am I missing something?

              – BWhite
              Nov 23 '18 at 5:31
















            0














            Is your id set to UrlParameter.Optional ?






            share|improve this answer
























            • Welcome to SO! Thanks for answering.

              – BWhite
              Nov 23 '18 at 5:05











            • I think so. Is that good? RegisterRoutes contains this line: routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with parameters new { controller = "Home", action = "Index", id = UrlParameter.Optional } ); // Parameter defaults

              – BWhite
              Nov 23 '18 at 5:06













            • Optional doesn't appear to me to be related. It is only used on the way in to set variable values from the URL path. It doesn't seem to me to be used on a redirect. Am I missing something?

              – BWhite
              Nov 23 '18 at 5:31














            0












            0








            0







            Is your id set to UrlParameter.Optional ?






            share|improve this answer













            Is your id set to UrlParameter.Optional ?







            share|improve this answer












            share|improve this answer



            share|improve this answer










            answered Nov 22 '18 at 1:11









            Subrat GuptaSubrat Gupta

            111




            111













            • Welcome to SO! Thanks for answering.

              – BWhite
              Nov 23 '18 at 5:05











            • I think so. Is that good? RegisterRoutes contains this line: routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with parameters new { controller = "Home", action = "Index", id = UrlParameter.Optional } ); // Parameter defaults

              – BWhite
              Nov 23 '18 at 5:06













            • Optional doesn't appear to me to be related. It is only used on the way in to set variable values from the URL path. It doesn't seem to me to be used on a redirect. Am I missing something?

              – BWhite
              Nov 23 '18 at 5:31



















            • Welcome to SO! Thanks for answering.

              – BWhite
              Nov 23 '18 at 5:05











            • I think so. Is that good? RegisterRoutes contains this line: routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with parameters new { controller = "Home", action = "Index", id = UrlParameter.Optional } ); // Parameter defaults

              – BWhite
              Nov 23 '18 at 5:06













            • Optional doesn't appear to me to be related. It is only used on the way in to set variable values from the URL path. It doesn't seem to me to be used on a redirect. Am I missing something?

              – BWhite
              Nov 23 '18 at 5:31

















            Welcome to SO! Thanks for answering.

            – BWhite
            Nov 23 '18 at 5:05





            Welcome to SO! Thanks for answering.

            – BWhite
            Nov 23 '18 at 5:05













            I think so. Is that good? RegisterRoutes contains this line: routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with parameters new { controller = "Home", action = "Index", id = UrlParameter.Optional } ); // Parameter defaults

            – BWhite
            Nov 23 '18 at 5:06







            I think so. Is that good? RegisterRoutes contains this line: routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with parameters new { controller = "Home", action = "Index", id = UrlParameter.Optional } ); // Parameter defaults

            – BWhite
            Nov 23 '18 at 5:06















            Optional doesn't appear to me to be related. It is only used on the way in to set variable values from the URL path. It doesn't seem to me to be used on a redirect. Am I missing something?

            – BWhite
            Nov 23 '18 at 5:31





            Optional doesn't appear to me to be related. It is only used on the way in to set variable values from the URL path. It doesn't seem to me to be used on a redirect. Am I missing something?

            – BWhite
            Nov 23 '18 at 5:31













            0














            The issue was an error in the javascript (caused by correcting lint "errors").

            It was



               var returnUrl = $("#hf-account-returnurl").val();
            if (returnUrl == null)


            Lint complained about the == and recommended changing it to ===



               if (returnUrl === null)


            $("#hf-account-returnurl").val() returns undefined if it isn't defined. This was the clue that finally led us to look at the JS code.

            Undefined == null but it doesn't === null.






            share|improve this answer




























              0














              The issue was an error in the javascript (caused by correcting lint "errors").

              It was



                 var returnUrl = $("#hf-account-returnurl").val();
              if (returnUrl == null)


              Lint complained about the == and recommended changing it to ===



                 if (returnUrl === null)


              $("#hf-account-returnurl").val() returns undefined if it isn't defined. This was the clue that finally led us to look at the JS code.

              Undefined == null but it doesn't === null.






              share|improve this answer


























                0












                0








                0







                The issue was an error in the javascript (caused by correcting lint "errors").

                It was



                   var returnUrl = $("#hf-account-returnurl").val();
                if (returnUrl == null)


                Lint complained about the == and recommended changing it to ===



                   if (returnUrl === null)


                $("#hf-account-returnurl").val() returns undefined if it isn't defined. This was the clue that finally led us to look at the JS code.

                Undefined == null but it doesn't === null.






                share|improve this answer













                The issue was an error in the javascript (caused by correcting lint "errors").

                It was



                   var returnUrl = $("#hf-account-returnurl").val();
                if (returnUrl == null)


                Lint complained about the == and recommended changing it to ===



                   if (returnUrl === null)


                $("#hf-account-returnurl").val() returns undefined if it isn't defined. This was the clue that finally led us to look at the JS code.

                Undefined == null but it doesn't === null.







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Jan 2 at 4:44









                BWhiteBWhite

                121110




                121110






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53421171%2fasp-net-redirect-fails-on-undefined-id%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Create new schema in PostgreSQL using DBeaver

                    Deepest pit of an array with Javascript: test on Codility

                    Fotorealismo