Подтвердить что ты не робот

Ошибка структуры Entity "Тип объекта не отображается".

Мы используем Entity Framework в нашем проекте, и у меня есть объект, который я создал в своей модели. Затем я импортирую функцию, которая использует хранимую процедуру. Предполагается, что метод, созданный импортом функции, возвращает коллекцию созданного вами пользовательского объекта.

Проблема заключается в том, что я получаю сообщение об ошибке при построении, которое говорит: "Тип объекта" someentity "не отображается.

Что это значит? Это расстроено, потому что у объекта нет базового хранилища данных? Он не нужен, функция import возвращает экземпляры этого объекта, и мне не нужно обновлять, редактировать или вставлять объекты этого типа.

Импорт функций отлично работает и возвращает коллекцию моего объекта по желанию, но эта ошибка раздражает. Хотя список ошибок перечисляет его как ошибку компиляции, он фактически не останавливает решение от компиляции.

Любая помощь приветствуется.

UPDATE

Если я открою EDMX в редакторе XML и дважды щелкните по ошибке в списке ошибок, он выделит этот фрагмент XML в красном:

   <EntityContainerMapping StorageEntityContainer="KlasEntitiesStoreContainer" CdmEntityContainer="KlasEntities">
      <EntitySetMapping Name="VendorBriefs"><EntityTypeMapping TypeName="KlasEntityDataModel.VendorBrief"><MappingFragment StoreEntitySet="ev_VendorBriefs">
        <ScalarProperty Name="VendorBriefID" ColumnName="VendorBriefID" />
        <ScalarProperty Name="Title" ColumnName="Title" />
        <ScalarProperty Name="Link" ColumnName="Link" />
        <ScalarProperty Name="LinkText" ColumnName="LinkText" />
        <ScalarProperty Name="BriefPath" ColumnName="BriefPath" />
        <ScalarProperty Name="Description" ColumnName="Description" />
        <ScalarProperty Name="IsActive" ColumnName="IsActive" />
        <ScalarProperty Name="DisplayOrder" ColumnName="DisplayOrder" />
      </MappingFragment></EntityTypeMapping></EntitySetMapping>
      <FunctionImportMapping FunctionImportName="SearchForVendorProductByKlasID" FunctionName="KlasEntities.Store.ev_ds_Products_SearchByKLASID" />
    </EntityContainerMapping>
4b9b3361

Ответ 1

Каждый объект должен быть сопоставлен либо с QueryView, либо с таблицей базы данных/с определением запроса. Вы не можете создать объект, который не отображается вообще. Если вы хотите определить результат импорта функции, который не отображается в вашей модели, вы должны определить свой VendorBrief как сложный тип.

Ответ 2

  • Откройте datamodel (файл edmx)
  • Щелкните правой кнопкой мыши в datamodel и выберите "Браузер модели"
  • В окне браузера модели перейдите в раздел "Импорт объектов" и удалите соответствующие элементы.

Ответ 3

Попробуйте открыть диаграмму файлов Entity,.edmx. Затем удалите все таблицы, используя DEL. Затем щелкните правой кнопкой мыши внутри диаграммы и выберите "Обновить модель из базы данных".

Visual Studio немного прослушивается в этом материале.