Ошибка Entity Framework - «Аргумент типа« Пространство имен ... EntityName »не удовлетворяет ограничению« Класс »для типа« TEntity ».» - PullRequest
0 голосов
/ 01 марта 2011

У меня определены следующие две таблицы ...

CREATE TABLE [LogLevel] (
  [Id] int primary key
  ,[Name] nvarchar(50) not null
  ,[Enabled] bit not null default (0)
)
GO

CREATE TABLE [Log] (
  [Id] bigint identity(1,1) primary key
  ,[LogLevel] int not null foreign key references [LogLevel]([Id])
  ,[On] datetimeoffset not null default (SYSDATETIMEOFFSET())
  ,[Summary] nvarchar(100)
  ,[Details] nvarchar(MAX)
)

После создания новой модели конечности я добавляю две таблицы выше. При попытке собрать я получаю следующие ошибки ...

Аргумент типа «Inxsol.CommandPlan.Data.Model.Log.LogLevel» не удовлетворяет ограничению «Класс» для параметра типа «TEntity». Значение типа 'System.Data.Objects.DataClasses.EntityReference (Of Inxsol.CommandPlan.Data.Model.LogLevel)' не может быть преобразовано в 'System.Data.Objects.DataClasses.EntityReference (Of Inxsol.CommandPlan.Data. .Model.Log.LogLevel). Значение типа 'System.Data.Objects.DataClasses.EntityReference (Of Inxsol.CommandPlan.Data.Model.Log.LogLevel)' не может быть преобразовано в 'System.Data.Objects.DataClasses.EntityReference (Of Inxsol.CommandPlan). .Data.Model.LogLevel). Превышено максимальное количество ошибок.

1 Ответ

0 голосов
/ 01 марта 2011

Хорошо, надеюсь, кто-то другой может опубликовать лучший ответ, но, очевидно, совпадение как-то связано с именем таблицы [LogLevel] или именем таблицы [Log] ... в любом случае, переименовав их в [DiagnosticLog] и [DiagnosticLogLevel] решили данную проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...