Моя таблица пользователей, которую я хочу сопоставить с aspnet_Users:
<class name="User" table="`User`">
<id name="ID" column="ID" type="Int32" unsaved-value="0">
<generator class="native" />
</id>
<property name="UserId" column="UserId" type="Guid" not-null="true" />
<property name="FullName" column="FullName" type="String" not-null="true" />
<property name="PhoneNumber" column="PhoneNumber" type="String" not-null="false" />
</class>
Моя таблица aspnet_Users:
<class name="aspnet_Users" table="aspnet_Users">
<id name="ID" column="UserId" type="Guid" />
<property name="UserName" column="UserName" type="string" not-null="false" />
</class>
Я попытался добавить отображения один-к-одному, один-ко-многим и многие-к-одному. Самое близкое, что я могу получить, с этой ошибкой: объект типа 'System.Guid' не может быть преобразован в тип 'System.Int32'.
Как создать одностороннее сопоставление пользователя с aspnet_User через столбец UserId пользователя?
Я только хочу создать ссылку, чтобы я мог извлекать информацию только для чтения, влиять на сортировку и т. Д. Мне все еще нужно оставить столбец UserId в настройках пользователя, как сейчас. Может быть, виртуальная ссылка отключает UserId? Это возможно даже с Nhibernate?
К сожалению, он действует так, как будто хочет использовать только ID пользователя для сопоставления с aspnet_Users. Изменение таблицы User, чтобы ее первичный ключ был идентификатором пользователя вместо идентификатора, на данный момент недоступно.
Любая помощь будет принята с благодарностью. Заранее спасибо.