我正在尝试更改给定文档的类,下面是我使用的代码
Document p8Document = Factory.Document.getInstance(p8ObjectStore,
oldDocumentClassName, new Id(documentId));
p8Document.changeClass(newDocClassName);
p8Document.save(RefreshMode.REFRESH);
执行代码后,我可以看到文档类已成功更改。现在的问题是,如果我再次为相同的 guid 运行代码,下面的行将使用旧的文档类名再次获取文档。
Document p8Document = Factory.Document.getInstance(p8ObjectStore,
oldDocumentClassName, new Id(documentId));
通过使用getInstance
,您不会要求服务器验证对象是否存在。 请改用fetchInstance
。
从实例化对象
getInstance 方法用于实例化引用假定已存在的服务器对象的对象。不会在内容引擎服务器上验证对象是否存在,并且在对对象执行功能之前不会往返服务器
getInstance
是一种设置对象同时避免访问 CE 服务器的方法。
fetchInstance 方法通过首先往返内容引擎服务器并检索("提取")属性值来实例化对象。
fetchInstance
实际上将从 CE 服务器检索对象。