2012-08-26 21 views
3

我正在關注亞當弗里曼的這本書Pro.ASP.NET.MVC.3.Framework。 所以我下載了代碼,並在他的菜單類別中生成了這個html代碼。亞當弗里曼書Pro.ASP.NET.MVC.3.Framework中的錯誤

的HTML:

<a class="" href="/Chess%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20">Chess            </a> 

當我按下鏈接(明顯),其結果是:

http://localhost:43190/Chess%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20 

我不知道別人有這本書的這個問題。

我嘗試在我的Global.asax:

routes.IgnoreRoute("favicon.ico"); 
      routes.IgnoreRoute("{*favicon}", new { favicon = @"(.*/)?favicon.ico(/.*)?" }); 

在我的佈局:

<link rel="shortcut icon" href="@Url.Content("~/Content/themes/base/images/favicon.ico")" type="image/x-icon" /> 

在我ninject控制器:

protected override IController GetControllerInstance(System.Web.Routing.RequestContext requestContext, Type controllerType) 
     { 

      if (controllerType != null) 
      { 
       return (IController)ninjectKernel.Get(controllerType); 
      } 
      else 
      { 
       return base.GetControllerInstance(requestContext, controllerType); 
      } 

     } 

我不知道是否有人與我有同樣的問題。我該如何解決這個問題?

回答

2

編輯: 真正的答案 OK,我明白知道我的SQL是爲nvarchar所以它產生的空白空間,我改變爲varchar,知道不會產生布蘭克空間

我讀的地方,加上.trim()它會做到這一點,是的它的工作我不明白爲什麼把這個(%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20% 20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20% 20%20%20)

改變這個 「類別=鏈接,」 此 「類別= link.Trim(),」

Menu.chtml

@model IEnumerable<string> 
    @{ 
     Layout = null; 
    } 
    @Html.ActionLink("Home", "List", "Product") 
    @foreach (var link in Model) 
    { 
     @Html.RouteLink(link, new { 
    controller = "Product", 
    action = "List", 
    category = link.Trim(), 
    page = 1 
    }, new {@class = link == ViewBag.SelectedCategory ? "selected": null} 
    ) 
    } 
+0

好吧我明白知道我的sql是nvarchar,所以它生成的空白空間,我更改爲varchar,並知道不生成blanck空間 –

1

您應該看到您的MSSQL數據庫。在本書中,作者使用nchar類型作爲列Category,您應該使用nvarchar類型。 nchar用空格(%20)填充行的末尾。或者您可以在SQL Designer的字段上設置ANSI-PADDING {off}