2

我在下面的链接中看到了这篇文章,我想知道你是否可以帮助我解决我的一些问题

http://msdn.microsoft.com/en-us/library/ee330223(v=office.12).aspx

在我们当前的项目中,我们没有开发但我们必须维护,我们面临一些问题,看起来像其他公司第一次开发内容类型,他们做得很好,使用 xml 定义,创建列表模板并且列表实例也做得很好并且有条理。

但是,在某个时间点,在内容类型和列表已经在生产中运行之后,必须进行一些更改(向现有内容类型添加新字段,更改显示名称或组名的翻译,更改所需的属性,showinnewform,showineditform, ETC)

在互联网上,我发现很多人都遇到了非托管内容类型的问题,这意味着内容类型与其 XML 定义分离,据我所知,当有人使用 UI 修改子内容类型或列表时会发生这种情况。

我正在尝试收集部署后管理内容类型的最佳实践列表:

1.如何在现有内容类型中添加新字段?

为此,我们使用了 UpgradeActions 和 AddFieldRef

2.如何从内容类型中删除现有字段?

为此,我们还不需要它,但我看到还存在可以在 UpgradeActions 中使用的 RemoveFieldRef 元素

3.如何对内容类型中的字段进行重新排序?

我们通过自定义升级操作中的代码来执行此操作。

4.如何更改现有字段的翻译?

我们通过自定义升级操作中的代码来执行此操作。

5.如何更改 ShowInDisplayForm、ShowInNewForm、Hidden、Required 等属性。

我们通过自定义升级操作中的代码来执行此操作。

我想知道我上面的特别点 3,4 和 5 是否可以称为最佳实践,或者我是否遗漏了什么或做错了什么?为什么?几周前我们遇到了很多问题,当通过代码进行更改并且下推更改不起作用时,没有推送更改(我们没有在列表中看到更改)。在阅读了几个小时后,我发现这可能是因为列表内容类型 LINK 与其父内容类型定义不同。

我发现可以使用 SQL 来重新建立此链接,但它当然不受支持。

http://www.olavaukan.com/2010/10/content-types-can-be-unghosted-too/

http://soerennielsen.wordpress.com/2007/09/08/convert-%E2%80%9Dvirtual-content-types%E2%80%9D-to-physical/

也许有人可以指导我正确的方向?

4

0 回答 0