Как сделать поток транзакций из Navision в компонент C #, зарегистрированный для взаимодействия COM? - PullRequest
0 голосов
/ 06 октября 2009

В моем контексте я включил Navision, но, возможно, это связано с каждым сценарием взаимодействия COM, я не знаю.

Во всяком случае, ситуация: - У меня есть простой компонент C #, зарегистрированный для COM Interop - Я звоню из Navision, непосредственно перед вставкой новой записи (для тех, кто знает Navision, в триггере OnInsert, таким образом, в контексте транзакции)

Я ожидал, что будет сделана внешняя транзакция, но System.Transactions.Transaction.Current имеет значение null.

Я что-то упустил? Есть ли какие-то особые методы, которые я должен принять, чтобы транзакция перетекла в мой компонент взаимодействия?

Ответы [ 2 ]

0 голосов
/ 05 марта 2010

Вы пытаетесь начать транзакцию в NAV, а затем получить доступ к этой транзакции с помощью вашего COM-объекта?

Похоже, что значение System.Transactions.Transaction.Current равно нулю, поскольку вы не инициализировали транзакцию в своем COM-объекте - можете ли вы опубликовать пример кода?

Хотя из вашего поста кажется, что вы ожидаете, что значение Transaction.Current будет ссылаться на транзакцию, которую вы инициировали в NAV, и я не думаю, что это произойдет, или даже возможно!

Что ваш COM-объект пытается сделать с транзакцией? Возможно, есть другой подход, который мы могли бы использовать?

...