DotText使用非80端口(默认端口)时URL出错

发现一个bug,使用80端口以外的端口提供WWW服务时,DotText生成的部分超级链接不会自动添加端口号。
例如:
网址: http://host:port/test/archive/2006/11/27/451.html
DotText生成的链接变成: http://host/test/archive/2006/11/27/451.html
端口(:port)被忽略了。

解决的办法在Dottext.Framework.Util.Globals.cs中,把:
return string.Format(AppUrl, request.Url.Host,app);
一律替换成:
return string.Format(AppUrl, host,app); 

重新编译,OK!

说明:
其实在源代码已经有检测端口的代码:
   string host=request.Url.Host;
   if(!request.Url.IsDefaultPort)
   {
    host+=":"+request.Url.Port;
   }
只是return语句采用旧的 request.Url.Host变量,改一下就行。
如果没有上面代码,也可以手工加上。

你可能感兴趣的:(DotText使用非80端口(默认端口)时URL出错)