2013-10-26 1 views
2

Я знаю, что это довольно noobish, я разработчик vb.net и вам нужно знать, почему @T используется в NopCommerce и каковы его преимущества/использование?Почему @T используется в NopCommerce и каковы его преимущества/использование?

например, можно взять ниже для объяснения кода .. я пытаюсь сделать @T ("Forum.Forums") ToUpper() и выдает ошибку ..

CS1061:. Nop.Web .Framework.Localization.LocalizedString»не содержит определения для ...

@model MenuModel @using Nop.Web.Models.Common; 

<ul class="top-menu"> 
    @Html.Widget("header_menu_before") 
    <li><a href="@Url.RouteUrl("HomePage")">@T("HomePage")</a></li> 
    @if (Model.RecentlyAddedProductsEnabled) 
    { 
     <li><a href="@Url.RouteUrl("RecentlyAddedProducts")">@T("Products.NewProducts")</a> 
     </li> 
    } 
    <li><a href="@Url.RouteUrl("ProductSearch")">@T("Search")</a> </li> 
    <li><a href="@Url.RouteUrl("CustomerInfo")">@T("Account.MyAccount")</a></li> 
    @if (Model.BlogEnabled) 
    { 
     <li><a href="@Url.RouteUrl("Blog")">@T("Blog")</a></li> 
    } 
    @if (Model.ForumEnabled) 
    { 
     <li><a href="@Url.RouteUrl("Boards")">@T("Forum.Forums")</a></li> 
    } 
    <li><a href="@Url.RouteUrl("ContactUs")">@T("ContactUs")</a></li> 
    @Html.Widget("header_menu_after") </ul> 

ответ

3

Он используется для локализации. Вы можете найти тот же шаблон в Orchard CMS.

NOP Commerce хранит ресурсы (пары значений ключа), используемые для локализации в базе данных. При доступе он кэширует их и использует свой движок для доступа к этим ресурсам.

@T - это всего лишь метод доступа к ресурсам при использовании differnt langs в приложении.

для того, чтобы удалить ошибку я упомянул, мы NEET использовать Convert.ToString (T («все»)). ToUpper(), и он не будет бросать эту ошибку снова

+0

нормально, им пытаются добавить .ToUpper(), чтобы показать все это в верхнем регистре, это не работает? и давая ошибку, о которой я упоминал выше, какие-либо подсказки почему? – inN0Cent

+1

вам нужно добавить ключевое значение того, что вы пытаетесь использовать для ресурсов. – DarthVader

+1

Я попытался отредактировать свой ответ, чтобы добавить, чтобы удалить ошибку, о которой я упоминал, мы не используем Convert.ToString (T («безотносительно»)). ToUpper(), и он не будет повторять эту ошибку снова – inN0Cent

Смежные вопросы