Routing error

Discussion in 'ASP.NET / ASP.NET Core' started by cptrich, Oct 8, 2011.

  1. I have been implementing Routing on my Site.

    I have a file business.aspx which is setup to recieve 2 items. The first is supposed to be the business State and the second the business name.

    http://delval.biz/Industry.aspx?ListName=Philadelphia-Startups

    is the page in question. If you mouse over some of the business names you will see...

    delval.biz/Business/PA/eGames, Inc

    Clicking on the link resolves properly.

    However... delval.biz/Business/PA/DelVal.Biz LLC

    Fails with a 404 error, this appears to be an issue with the period in the business name. delval.biz/Business/PA/Packlate.com Inc
    fails in the same way.

    This code works great on both of my development computers. There must be a setting I'm missing on the DiscountASP site. The site is set for .NET 4.0

    Thanks,
    Rich
     
  2. You can search the iis.net forums for examples on how to filter this better.

    Going through your links just now I did see what you are detailing.

    The next two lines resolve fine:
    http://delval.biz/Business/PA/Indy Hall Labs LLC
    http://delval.biz/Business/PA/ColdLight Solutions, LLC

    This one however does not:
    http://delval.biz/Business/PA/PACKLATE COM, INC

    If I fudge the URL with replacement characters, replacing the "," I can get the site to load but with no data on the page.

    I don't have an easy answer for you other than searching for better ways to filter.
    All the best,
    Mark
     
  3. Hi Mark,

    The main thing I notice is that companies whose Business Names are (something).com or (something).biz, etc. will all fail with a 404.0 error. For some reason the Router is interpreting these as files on the site, which they aren't, and throwing the 404.0 because it can't find them. I'm looking at parsing these and replacing the . with a ^ and then do a backwards fix to put them back in order so the stored procedure can find the correct record. I also pass them through the Server.htmlencoder/htmldecoder to avoid other issues. It is not the period itself that is the problem, since companies with L.L.C. are ok.
     
  4. I did a quick string replace of ".com" with "^com" and then replaced it back on the other side and it worked fine. So for some reason it is blocking ".com" and ".biz" in the string, or interpreting it as an available resource in it's own right. Very annoying.
     

Share This Page