Lors de l'enregistrement d'un nouvel objet dans une table ayant un id avec autoincrement, l'identifiant de l'objet n'est pas mis à jour.
Est ce un comportement normal ? Ai-je homis quelque chose dans le code source ?
- Code: Select all
namespace MySpace {
class MyClass {
QX_REGISTER_FRIEND_CLASS(MySpace::MyClass)
public:
MyClass(boost::uint32_t id = 0l);
boost::uint32_t getId() {
return m_id;
}
private:
boost::uint32_t m_id;
};
}
- Code: Select all
namespace qx {
template<> void register_class(QxClass<MySpace::MyClass> & t) {
IxDataMember * pData = NULL;
t.setName("tab1");
pData = t.id(&MySpace::MyClass::m_id, "tab1_id");
}
}
namespace MySpace {
MyClass::MyClass(boost::uint32_t id) :
m_id(id) {
}
}
- Code: Select all
MySpace::MyClass v();
qx::dao::insert(v);
// ici m_id vaut toujours 0