NHibernate с TransactionScope

Почему бы не создать группу из двух прямоугольников? Примерно так:

var canvas = this.__canvas = new fabric.StaticCanvas('c');

var rectBack = new fabric.Rect({
  width: 170,
  height: 170,
  top: 0,
  left: 0,
  fill: 'rgba(0,0,255,1.0)',
  rx: 2,
  ry: 2
});

var outerMargin = 10
var innerOutlineWidth = 4

var innerOutline = new fabric.Rect({
  width: 170 - outerMargin - innerOutlineWidth/2,
  height: 170 - outerMargin - innerOutlineWidth/2,
  top: outerMargin/2,
  left: outerMargin/2,
  stroke: 'rgba(255,255,255,1.0)',
  fill: 'rgba(0,0,0,0.0)',
  strokeWidth: innerOutlineWidth,
  rx: 10,
  ry: 10
});

var group = new fabric.Group([rectBack, innerOutline], {
  left: 0,
  top: 0,
  angle: 0
});

canvas.add(group);
<script src="https://cdnjs.cloudflare.com/ajax/libs/fabric.js/2.7.0/fabric.min.js"></script>
<canvas id="c" width="200" height="200"></canvas>

Любая используемая вами структура будет иметь некоторые фундаментальные строительные блоки, которые вы должны собрать вместе чтобы получить то, что вы хотите. Поэтому я бы не рекомендовал переходить к другому.

33
задан Andy White 14 March 2009 в 17:33
поделиться

3 ответа

У меня есть тестирование этого использующего переменных поставщиков, и оно просто работает. Если у Вас нет "объема. Завершенный ()" затем транзакция будет откатывать. Вы, возможно, должны иметь MSDTC, выполняющий машину (машины), включенную, если существует больше чем один длительный ресурс. В этом случае MSDTC будет автоматически обнаруживать окружающие транзакции ADO.NET и управлять всем этим.

7
ответ дан 27 November 2019 в 18:37
поделиться

Вышеупомянутое работает нормально при условии, что вы используете провайдер соединений, который поддерживает использование облегченного диспетчера транзакций, например SQL Server 2005/2008.

Если вы используете SQL Server 7/2000, тогда все ваши транзакции станут распределенными транзакциями, даже если вы попадете только в одну базу данных / ресурс. Это, вероятно, не то, что вам нужно в большинстве случаев, и это будет стоить дорого с точки зрения производительности.

Поэтому проверьте, подходит ли комбинация вашего провайдера подключения и сервера базы данных для использования с TransactionScope.

6
ответ дан 27 November 2019 в 18:37
поделиться

Кроме того, если вы используете TransactionScope, обновитесь до NHibernate 2.1. Только в версии 2.1 NH по-настоящему хорошо интегрировалась с TransactionScope.

1
ответ дан 27 November 2019 в 18:37
поделиться
Другие вопросы по тегам:

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