NHibernate несколько отображений первичных ключей

Я добавил jQuery, чтобы добавить класс к выбранной опции. Попробуйте это:

function selectOption() {
  var x = $('#select-dropdown').val()
  $('#select-dropdown option[value='+ x+']').attr("selected", true).attr("disabled", true)
}
select option:disabled:checked {
  color: grey;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<select id="select-dropdown" onChange="selectOption()">
  <option selected disabled>Initial Option</option>
  <option value="One">One</option>
  <option value="Two">Two</option>
</select>

5
задан Patrick Peters 12 May 2009 в 14:12
поделиться

3 ответа

Существует свойство 'составной-идентификатор', которое вы можете использовать в своем классе отображение вместо свойства id. Однако вы должны знать, что команда nHibernate категорически не рекомендует его использовать. Похоже, вы имеете дело с устаревшей базой данных, в которой у вас нет контроля над схемой. Итак, 'составной-идентификатор' предназначен специально для вашей ситуации.

Дополнительную информацию можно найти в документации NH: http://nhibernate.info/doc/nh/en/index.html

6
ответ дан 18 December 2019 в 12:01
поделиться

Лично мне не нравится иметь составной первичный ключи в схемах таблиц моей базы данных, плюс они обычно «трудно» обрабатывать любым ORM-картографом, который я пробовал. Если мне нужно присвоить уникальный идентификатор строке в таблице (особенно, если она представляет бизнес-объект), я предпочитаю использовать суррогатный идентификатор с одним значением - GUID или целое число - если какое-либо из полей в таблице не указано. т подходит. Использование составного идентификатора всегда затруднительно при написании запросов и объединений, поэтому моя обычная стратегия состоит в использовании суррогатного идентификатора (который не имеет значения для бизнес-объекта, кроме идентификации самого объекта) и наложения уникального ограничения на поля предыдущий CPK.

0
ответ дан 18 December 2019 в 12:01
поделиться

Вот пример использования свойства составного идентификатора в файле сопоставления NHibernate:

<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="Domain" namespace="Domain.Model">

  <class name="Program" table="program">
    <composite-id>
      <key-property name="Id" column="id"></key-property>
      <key-property name="Prog" column="prog"></key-property>
      <key-property name="Site" column="site"></key-property>
    </composite-id>
    <property name="ActiveDate" column="active_date"/>
    <property name="Year" column="year"/>
  </class>

</hibernate-mapping>
9
ответ дан 18 December 2019 в 12:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: