0

BaseEntity から派生している単一の抽象クラスから継承するいくつかのモデル クラスがあります。

パブリック抽象クラス アイテム: BaseEntity

コンテキストで Entity Data Model を作成しようとすると、次のエラーが発生します: System.Reflection.TargetInvocationException: 呼び出しのターゲットによって例外がスローされました。---> System.Data.Entity.ModelConfiguration.ModelValidationException: モデル生成中に 1 つ以上の検証エラーが検出されました:

DataLayer.EntityAspect: : EntityType 'EntityAspect' にはキーが定義されていません。この EntityType のキーを定義します。DataLayer.EntityKey: : EntityType 'EntityKey' にはキーが定義されていません。この EntityType のキーを定義します。DataLayer.MetadataStore: : EntityType 'MetadataStore' にはキーが定義されていません。この EntityType のキーを定義します。DataLayer.Validator: : EntityType 'Validator' にはキーが定義されていません。この EntityType のキーを定義します。DataLayer.DataType: : EntityType 'DataType' にはキーが定義されていません。この EntityType のキーを定義します。DataLayer.StructuralType: : EntityType 'StructuralType' にはキーが定義されていません。この EntityType のキーを定義します。DataLayer.ValidationError:: EntityType 'ValidationError' にはキーが定義されていません。この EntityType のキーを定義します。DataLayer.ValidationContext: : EntityType ' ValidationContext' にはキーが定義されていません。この EntityType のキーを定義します。DataLayer.StructuralProperty: : EntityType 'StructuralProperty' にはキーが定義されていません。この EntityType のキーを定義します。EntityAspects: EntityType: EntitySet 'EntityAspects' は、キーが定義されていないタイプ 'EntityAspect' に基づいています。EntityKeys: EntityType: EntitySet 'EntityKeys' は、キーが定義されていないタイプ 'EntityKey' に基づいています。MetadataStores: EntityType: EntitySet 'MetadataStores' は、キーが定義されていないタイプ 'MetadataStore' に基づいています。Validators: EntityType: EntitySet 'Validators' は、キーが定義されていないタイプ 'Validator' に基づいています。DataTypes: EntityType: EntitySet 'DataTypes' は、キーが定義されていないタイプ 'DataType' に基づいています。StructuralTypes: EntityType: EntitySet ' StructuralTypes' は、キーが定義されていないタイプ 'StructuralType' に基づいています。ValidationErrors: EntityType: EntitySet 'ValidationErrors' は、キーが定義されていないタイプ 'ValidationError' に基づいています。ValidationContexts: EntityType: EntitySet 'ValidationContexts' は、キーが定義されていないタイプ 'ValidationContext' に基づいています。StructuralProperties: EntityType: EntitySet 'StructuralProperties' は、キーが定義されていないタイプ 'StructuralProperty' に基づいています。キーが定義されていません。StructuralProperties: EntityType: EntitySet 'StructuralProperties' は、キーが定義されていないタイプ 'StructuralProperty' に基づいています。キーが定義されていません。StructuralProperties: EntityType: EntitySet 'StructuralProperties' は、キーが定義されていないタイプ 'StructuralProperty' に基づいています。

System.Data.Entity.Core.Metadata.Edm.EdmModel.Validate() で System.Data.Entity.DbModelBuilder.Build (DbProviderManifest providerManifest、DbProviderInfo providerInfo) で System.Data.Entity.DbModelBuilder.Build (DbConnection providerConnection) でSystem.Data.Entity.Internal.LazyInternalContext.CreateModel(LazyInternalContext internalContext) で System.Data.Entity.Internal.RetryLazy`2.GetValue(TInput 入力) で System.Data.Entity.Internal.LazyInternalContext.InitializeContext() で System. Data.Entity.Internal.LazyInternalContext.get_ModelBeingInitialized() System.Data.Entity.Infrastructure.EdmxWriter.WriteEdmx(DbContext コンテキスト、XmlWriter ライター) --- 内部例外スタック トレースの終わり --- System.RuntimeMethodHandle.InvokeMethod(Object System.System.RuntimeType. Microsoft.DbContextPackage.Handlers.ViewContextHandler.ViewContext(MenuCommand menuCommand、Object context、Type systemContextType)Microsoft.DbContextPackage.Handlers.ViewContextHandler.ViewContext(MenuCommand menuCommand、Object context、Type systemContextType)Microsoft.DbContextPackage.Handlers.ViewContextHandler.ViewContext(MenuCommand menuCommand、Object context、Type systemContextType)

BaseEntity の継承を削除して Entity Data Model を作成すると、正常に完了します。私のモデルを壊すために BaseEntity は何をしていますか?

現実の問題は、 DataService.Metadata() 呼び出しからメタデータを返そうとすると、このエラーも発生することです。

これを回避する方法はありますか?

ありがとう

4

1 に答える 1