1

我将示例产品模块添加到我的项目中,将其设置为文档中的显示,并且在重新启动应用程序后出现错误。从 SystemConfig.config 中删除注册表字符串不能解决问题。

Could not find the specified key "ProductsLandingPageTitle" or class id "ProductsResources".

堆栈跟踪:

[ArgumentException: Could not find the specified key "ProductsLandingPageTitle" or class id "ProductsResources".]
Telerik.Sitefinity.Localization.Resource.GetString(ResourceDataProvider provider, String classId, String key, CultureInfo culture, Boolean falback, Boolean throws) +454
Telerik.Sitefinity.Localization.Res.Get(String classId, String key, CultureInfo culture, Boolean fallback, Boolean throws) +168
Telerik.Sitefinity.Abstractions.AppSettings.GetResourceValue(String resourceClassId, String resourceKey, CultureInfo culture) +125
Telerik.Sitefinity.Descriptors.LstringPropertyDescriptor.GetValueFromResource(String value, CultureInfo culture) +121
Telerik.Sitefinity.Descriptors.LstringPropertyDescriptor.TryGetResourceValue(Object component, String& value, CultureInfo culture) +140
Telerik.Sitefinity.Descriptors.LstringPropertyDescriptor.GetValue(Object component, CultureInfo culture, Boolean throwException, CultureInfo[] defaultCultures) +58
Telerik.Sitefinity.Descriptors.LstringPropertyDescriptor.GetValue(Object component, CultureInfo culture, Boolean throwException) +71
Telerik.Sitefinity.Descriptors.LstringPropertyDescriptor.GetString(Object component, CultureInfo culture, Boolean fallback) +100
Telerik.Sitefinity.Model.Lstring.GetString(CultureInfo culture, Boolean fallback) +64
Telerik.Sitefinity.Model.Lstring.get_Value() +35
Telerik.Sitefinity.Web.PageSiteNode..ctor(SiteMapBase provider, PageNode pageNode) +2725
Telerik.Sitefinity.Web.SiteMapBase.GetChildNodes(SiteMapNode node, Boolean ifAccessible) +470
Telerik.Sitefinity.Web.SiteMapBase.GetChildNodes(SiteMapNode node) +12
System.Web.SiteMapNode.get_ChildNodes() +30
System.Web.SiteMapNode.get_HasChildNodes() +10
Telerik.Sitefinity.Web.UI.Backend.MainMenu.IsNodeEmpty(PageSiteNode node) +30
Telerik.Sitefinity.Web.UI.Backend.MainMenu.<IsNodeEmpty>b__6(PageSiteNode c) +4
System.Linq.WhereArrayIterator`1.MoveNext() +55
System.Linq.Enumerable.Count(IEnumerable`1 source) +200
Telerik.Sitefinity.Web.UI.Backend.MainMenu.IsNodeEmpty(PageSiteNode node) +252
Telerik.Sitefinity.Web.UI.Backend.MainMenu.<IsNodeEmpty>b__6(PageSiteNode c) +4
System.Linq.WhereArrayIterator`1.MoveNext() +55
System.Linq.Enumerable.Count(IEnumerable`1 source) +200
Telerik.Sitefinity.Web.UI.Backend.MainMenu.IsNodeEmpty(PageSiteNode node) +252
Telerik.Sitefinity.Web.UI.Backend.MainMenu.CreateRadMenuItemFromNode(SiteMapNode node) +100
Telerik.Sitefinity.Web.UI.Backend.MainMenu.OnLoad(EventArgs e) +408
System.Web.UI.Control.LoadRecursive() +98
System.Web.UI.Control.LoadRecursive() +168
System.Web.UI.Control.LoadRecursive() +168
System.Web.UI.Control.LoadRecursive() +168
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3488

什么可能导致这些问题?

谢谢!

4

3 回答 3

1

这与本地化有关。ProductsResources 类是定义这些键的地方,我猜该键丢失了……

您还可以通过在设置时删除 ResouceClassId 属性来简单地禁用本地化

我希望这是有帮助的!

于 2011-05-23T04:45:21.843 回答
0

添加这个

ResourceClassId=ProductCatalogSample.ProductsResources

在注册模块时

于 2011-06-30T10:12:49.267 回答
0

需要添加资源类id,在初始化资源类之前应该有类似

[ObjectInfo("ProductsResources", ResourceClassId = "ProductsResources")]

于 2011-07-01T05:12:55.377 回答