2

以下のリンクでこの記事を見ました。質問があれば教えていただけないでしょうか。

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

私たちが開発したわけではありませんが、維持する必要がある現在のプロジェクトでは、いくつかの問題に直面しています。他の会社が初めてコンテンツ タイプを開発したように見えますが、xml 定義を使用してリスト テンプレートを作成することで、問題なく完了しました。また、インスタンスのリストも適切に整理された方法で行われました。

ただし、ある時点で、コンテンツ タイプとリストが既に運用環境で実行された後、いくつかの変更を行う必要がありました (既存のコンテンツ タイプへの新しいフィールドの追加、表示名またはグループ名の翻訳の変更、required、showinnewform、showineditform などのプロパティの変更)。等)

インターネット上で、多くの人がゴースト化されていないコンテンツ タイプに問題を抱えていることを発見しました。これは、誰かが UI を使用して子コンテンツ タイプまたはリストを変更したときに、コンテンツ タイプが XML 定義から切り離されていることを意味します。

展開後のコンテンツ タイプを管理するためのベスト プラクティスのリストを収集しようとしています。

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