Я создал простую надстройку управления для Dynamics NAV / BC, и у меня возникли некоторые проблемы с ней.
Я сделал то же самое (насколько я могу судить) в этой надстройке, как я делал в предыдущих надстройках, которые я создал того же типа, которые работали очень хорошо.
Проблема в том, что когда сборка надстройки добавляется на страницу (лично я не очень много знаю об этой части, я просто наблюдаю, как это делается), события и методы надстройки. в должны появиться (должен быть создан код заглушки), однако это не так ... Ничего не происходит.
Когда они пытаются с похожей сборкой (той же платформой, тем же интерфейсом, той же версией сборки Microsoft.Dynamics.Framework.UI.Extensibility), короче говоря, очень похожей сборки, код для методов и событий генерируется как ожидалось.
Итак, мой вопрос, очевидно, почему он работает для одной сборки, а не для другой, когда они почти идентичны в коде C #?
Вот код для сборки, не работающей.
using Microsoft.Dynamics.Framework.UI.Extensibility;
namespace Dynamics.NAV.CR
{
[ControlAddInExport("Dynamics.NAV.CR")]
public interface ICRAddIn
{
[ApplicationVisible]
event ApplicationEventHandler AddInReady;
[ApplicationVisible]
event DataEventHandler ButtonClicked;
[ApplicationVisible]
event DataEventHandler ElementHtmlRetrieved;
[ApplicationVisible]
event DataEventHandler ElementTextRetrieved;
[ApplicationVisible]
void setElementHtml(string control_id, string html);
[ApplicationVisible]
void setElementText(string control_id, string text);
[ApplicationVisible]
void setElementCss(string control_id, string css);
[ApplicationVisible]
void addElementCssCls(string control_id, string cls);
[ApplicationVisible]
void removeElementCssCls(string control_id, string cls);
[ApplicationVisible]
void setElementProp(string control_id, string prop_name, string prop_value);
}
}
Чего мне не хватает?
Человек, развертывающий сборку, говорит, что он удостоверился, что она «разблокирована», так что это не должно быть проблемой.
Я забыл добавить код для пользовательского обработчика событий - вот он.
namespace Dynamics.NAV.CR
{
public delegate void DataEventHandler(object data);
}