Откат транзакции SQL ServiceBrokerInterface не откатывается

Я делаю некоторую работу с интерфейсом брокера служб SQL, у меня есть служба, связанная с одной очередью, и она содержит только один метод, проблема в том, что когда я получаю сообщение, если я запускаю транзакцию.Rollback() сообщение исчезает из очереди, которая Я думаю, что не должно случиться. Вот метод:

    [BrokerMethod("MySBResponseMessage")]
    public void ProcessRequestMessage(Message ReceivedMessage, SqlConnection conn, SqlTransaction trans)
    {
        trans.Rollback();
    }

и вот экземпляр службы:

    service.Run(false, conn, null);

Спасибо мхашим

1 ответ

Решение

Все должно работать..

Правильно ли реализован класс обслуживания? И вызывая базовый класс в конструкторе? лайк:

        class MyService : ServiceBrokerInterface.Service
        {
            public MyService(SqlConnection con)
                : base("ServiceName", con)
            {
                //...
            }

            [BrokerMethod("DEFAULT")]
            public void DoSmth(Message msg, SqlConnection con, SqlTransaction tran)
            {
                //...
            }
        }
Другие вопросы по тегам