У меня есть веб-служба для моего приложения ASP.NET MVC 3, которое создает новый заказ на продажу в AX. В AX я создал класс OnlineOrder, который на данный момент имеет 1 метод. Это для создания справки о продажах. Ниже приведен код в моем веб-сервисе:
public AxaptaObject order;
public void CreateOrder()
{
AxaptaStart();
order = Axapta.CreateAxaptaObject("OnlineOrder");
AxaptaStop();
}
public string GetSalesRef(string username, string delivery, string reference)
{
AxaptaStart();
string number = order.Call("orderCreate", username, delivery, reference).ToString();
AxaptaStop();
return number;
}
Затем в моем контроллере я вызываю эти методы:
client.CreateOrder();
string number = client.GetSalesRef(user.Username, order.deliverymethod, order.custorder).ToString();
Это не работает, и информация об исключении не отображается, это просто пустое сообщение. Я считаю, что order
AxaptaObject не относится к типу OnlineOrder
, поэтому он не может вызывать эти методы. Как мне создать экземпляр объекта для использования метода orderCreate
?
РЕДАКТИРОВАТЬ:
If I do:
public string CreateOrder(string username, string delivery, string reference)
{
AxaptaStart();
order = Axapta.CreateAxaptaObject("OnlineOrder");
string number = order.Call("orderCreate", username, delivery, reference).ToString();
AxaptaStop();
return number;
}
Это работает, но это недопустимое решение, так как я хотел бы добавить больше методов к моему объекту OnlineOrder в будущем, и я не хочу вызывать их все в одном методе в моем веб-сервисе.