Entity Framework 4.1 - Взаимосвязи между неключевыми столбцами

У меня есть 2 связанных объекта, но устаревшая схема sql по существу имеет 2 ключевых столбца для одной и той же таблицы (не ключ с 2 столбцами: см. ниже). Мне нужно восстановить связь со столбцом «ложный ключ». Есть ли способ сделать это декларативно в Entity Framework 4.1?

Public Class Client
    Inherits ModelBase

    <Key(), Required()>
    Public Property ClientID As Decimal

    <Required(), StringLength(50)>
    Public Property ClientCode As String

    ........


Public Class ClientLocation
    Inherits ModelBase

    ........

    <Required(), StringLength(50)>
    Public Property ClientCode As String

    ........

    <ForeignKey("ClientCode")>
    Public Overridable Property Client As Clients.Client

И я получаю следующую ошибку:

* Во время создания модели были обнаружены одна или несколько ошибок проверки: System.Data.Edm.EdmAssociationConstraint:: Типы всех свойства в зависимой роли реляционного ограничения должны быть то же, что и соответствующие типы свойств в основной роли. Тип свойства ClientCode в сущности ClientLocation не сопоставить тип свойства "ClientID" сущности "Client" в ссылочное ограничение 'ClientLocation_Client'. *

Потому что он думает, что я пытаюсь сопоставить ClientLocation.ClientCode> Client.ClientID , когда я действительно пытаюсь сопоставить ClientLocation.ClientCode> Client.ClientCode ...

Есть мысли?

Спасибо!

13
задан Tom Halladay 23 September 2011 в 18:31
поделиться