1

Products モジュールをインストールしようとしています。チュートリアルに基づいて実行しました(いくつかのフィールドのサンプルに追加します)が、アプリを再記述した後、次のエラーが発生しました:

クラス ProductCatalog.Model.ProductItem のメタデータが登録されていません。(これは通常、このクラスが永続的であると宣言されていないか、永続的であると宣言されているが拡張されていないことを示します。クラスは file:///C:/Program Files/Telerik/Sitefinity 4.1/Projects/pssite/bin/ProductCatalog からロードされました。 .DLL.)

スタック トレース:

[OpenAccessException: No metadata has been registered for class ProductCatalog.Model.ProductItem. (This usually indicates, that either this class is not declared persistent or it is declared persistent but not enhanced. The class was loaded from file:///C:/Program Files/Telerik/Sitefinity 4.1/Projects/pssite/bin/ProductCatalog.DLL.)]
   DynamicModule.ns.Wrapped_OpenAccessRoleProvider_975c8a0a334c43b7a81f0a078afb63cf.GetRolesForUser(Guid userId) +230
   Telerik.Sitefinity.Security.SitefinityPrincipal.Initialize() +1036
   Telerik.Sitefinity.Security.SitefinityPrincipal.get_Roles() +9
   Telerik.Sitefinity.Configuration.RolePolicyHandler.GetPolicyNames(ConfigProvider configProvider, ConfigSection section) +46
   Telerik.Sitefinity.Configuration.ConfigElement.GetValueFromPolicy(ConfigPolicyHandler handler, ConfigProperty prop, Object& value) +101
   Telerik.Sitefinity.Configuration.ConfigElement.GetPolicyValue(ConfigProperty prop, Object& value) +87
   Telerik.Sitefinity.Configuration.ConfigElement.get_Item(ConfigProperty prop) +56
   Telerik.Sitefinity.Services.SystemConfig.get_CacheDependencyHandlers() +68
   Telerik.Sitefinity.Data.CacheDependency..cctor() +79
[TypeInitializationException: The type initializer for 'Telerik.Sitefinity.Data.CacheDependency' threw an exception.]
   Telerik.Sitefinity.Data.CacheDependency.Subscribe(Type handlerType, Object trackedItem, ChangedCallback callback) +0
   Telerik.Sitefinity.Configuration.ConfigCacheDependency.Initialize(CacheItem owningCacheItem) +74
   Telerik.Microsoft.Practices.EnterpriseLibrary.Caching.CacheItem.InitializeExpirations() +30
   Telerik.Microsoft.Practices.EnterpriseLibrary.Caching.Cache.Add(String key, Object value, CacheItemPriority scavengingPriority, ICacheItemRefreshAction refreshAction, ICacheItemExpiration[] expirations) +508
   Telerik.Microsoft.Practices.EnterpriseLibrary.Caching.CacheManager.Add(String key, Object value, CacheItemPriority scavengingPriority, ICacheItemRefreshAction refreshAction, ICacheItemExpiration[] expirations) +28
   Telerik.Sitefinity.Configuration.ConfigSection.HasPolicy(ConfigPolicyHandler policyHandler, String policyName, PolicyStatusInfo& policyStatus) +186
   Telerik.Sitefinity.Configuration.ConfigElement.GetValueFromPolicy(ConfigPolicyHandler handler, ConfigProperty prop, Object& value) +182
   Telerik.Sitefinity.Configuration.ConfigElement.GetPolicyValue(ConfigProperty prop, Object& value) +87
   Telerik.Sitefinity.Configuration.ConfigElement.get_Item(ConfigProperty prop) +56
   Telerik.Sitefinity.Configuration.ConfigElement.get_Item(String propertyName) +68
   Telerik.Sitefinity.Security.Configuration.SecurityConfig.get_ApplicationRoles() +17
   Telerik.Sitefinity.Security.SitefinityPrincipal.get_IsBackendUser() +56
   Telerik.Sitefinity.Security.SecurityManager.AuthenticateRequest(HttpContextBase context) +932
   Telerik.Sitefinity.Web.SitefinityHttpModule.Context_AuthenticateRequest(Object sender, EventArgs e) +18
   System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +168
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +76*

私は SF4.1 を使用しています。他の誰かがこのエラーを受け取りましたか?

4

1 に答える 1

1

この問題は、ほとんどの場合、データ モデルに流暢なマッパーを使用する場合のプロジェクトのオープン アクセスの構成ミスです。

プロジェクトをアンロードし、.csproj ファイルを編集して、openaccess 用に拡張する必要があります。具体的な手順については、「OpenAccess Enhancer との統合」セクションの下にあるこのリンクを確認してください。

これで問題が解決しない場合はお知らせください

これが役に立ったことを願っています!

于 2011-05-18T13:02:42.997 に答える