У меня есть EDM с объектом "Расширения" - в этом объекте, расширение свойства. Я обеспечил электричеством все другие столбцы очень хорошо, но этот отказывается обеспечивать электричеством. Я предполагаю, потому что объект и свойство совместно используют то же имя? Вот мой код, расширения не работает, префикс действительно работает:
Imports System.Web.DynamicData
Imports System.ComponentModel.DataAnnotations
<MetadataType(GetType(ExtensionsMetaData))> _
Partial Public Class Extensions
End Class
Public Class ExtensionsMetaData
Private _phones_extensions As Object
Private _prefix As Object
Private _did_flag As Object
Private _len As Object
Private _sfc_id As Object
Private _name_display As Object
Private _floor As Object
Private _room As Object
Private _phones_departments As Object
Private _phones_buildings As Object
Private _phones_phones As Object
Private _phones_restriction_classes As Object
Private _phones_tens As Object
<DisplayName("Extension")> _
Public Property extensions() As Object
Get
Return _phones_extensions
End Get
Set(ByVal value As Object)
_phones_extensions = value
End Set
End Property
<DisplayName("Prefix")> _
Public Property prefix As Object
Get
Return _prefix
End Get
Set(ByVal value As Object)
_prefix = value
End Set
End Property
Класс конца
Как я могу заставить этот код работать? Я посмотрел на всем протяжении своей модели данных, и похоже, что именем должны быть Расширения!
Ошибка, которую я получаю: связанные метаданные вводят для типа 'phoneDBentities. Расширения содержат следующие неизвестные свойства или поля: расширения. Удостоверьтесь, что имена этих участников соответствуют названиям свойств на основном типе.
Это ограничение функции EF «соглашение по конфигурации».
Вот связанный с этим вопрос: Entity Framework Mapping Oddity - имена элементов не могут совпадать с их включающим типом
Самый простой способ решить проблему - переименовать свойство в «PhoneExtension».