2017-06-20 3 views
0

Ich habe ein MVC-Projekt. In Sichten verwende ich , um Werte aus der Ressourcendatei wie folgt zu laden.ViewContext existiert nicht im aktuellen Kontext

@ViewContext.HttpContext.GetGlobalResourceObject("XyzResources", "MonLabel") 

Ich erhalte eine fehler- The name ViewContext does not exit in current context

Im Folgenden sind der Namespace, die ich auf der Seite hinzugefügt haben.

@using System.Configuration 
@using System.Globalization 
@using System.Web.Configuration 
@using Telerik.Sitefinity.Utilities.Lucene.Net.Documents 
@using Telerik.Sitefinity.UI.MVC 

Ich weiß nicht, warum es mir diesen Fehler gibt. Wenn ich das Projekt mit einem Fehler ausführe, wird die Seite ohne Probleme angezeigt. Ich bekomme auch die Werte aus der Ressourcendatei.

Aber ich weiß nicht, wie ich es lösen soll.

Vielen Dank.

Antwort

0

Sie müssen ViewContext nicht verwenden. In Ihre Ansichten können Sie nur Zugriff auf Ressourcen wie folgt aus:

@System.Web.HttpContext.GetGlobalResourceObject("XyzResources", "MonLabel") 

Oder Sie können so verwenden:

@HttpContext.GetGlobalResourceObject("XyzResources", "MonLabel") 

Aber Sitefinity hat eine bessere Art und Weise Lokalisierung mit Ressourcen zu behandeln.

Im SiteFintiy-Backend können Sie bereits Ressourcenetiketten verwalten. (In Administration->Labels & Messages) Dann in Aussicht kann man es so Zugang:

@Html.Resource("AmazonSearchServiceTitle", "ProductsResources") 

Sie können mehr Informationen über Ressourcen in Sitefinity in diesem Artikel finden: http://docs.sitefinity.com/for-developers-create-custom-resource-classes

+0

Danke für mich die Verbindung bereitstellt. Ich habe versucht, '@ Html.Resource' zu ​​verwenden es gibt mir HTML-Helper enthält keine Definition für Ressource und beste Erweiterung Methode Überlastung localizationhelpers.resource, können Sie mir dabei helfen? – ISHIDA

+0

Sie müssen hinzufügen mit '@ using Telerik.Sitefinity.Frontend.Mvc.Helpers' –

+0

Ich tat das. Es hat nicht geholfen – ISHIDA

Verwandte Themen