2016-08-19 23 views
1

I外部データベースとデータを同期するスケジューラタスクを持つKentico Webサイトを持っている。基本的に、外部データベーステーブルから作成されたページはほとんどありません。 Kenticoテーブルには、レコードの作成と更新の2つの方法があります。Kenticoページ更新が更新されない物理テーブル

のために、我々はレコードが正常に動作作成し、物理テーブルのデータを更新

TreeNode page = TreeNode.New(Helper.ClassName_Campus); 
page.SetValue("Title", "Title"); 
page.Insert(parentPage); 

を使用して作成します。我々は

TreeNode page = DocumentHelper.GetDocuments(Helper.ClassName_Campus).OnSite("site").Where(" ID", QueryOperator.Equals, 1).FirstObject; 
page.SetValue("Title", "Title"); 
page.Update(); 

UpdateメソッドがOKな作品をして使用して、更新のために

。私がページとフォームデータに行くと、私はフォームフィールド上で新しいデータを見ることができますが、実際の物理テーブルのデータは更新されません。ページの更新時に実際の物理データテーブルを更新するにはどうすればよいですか。 Kenticoは更新後にフォームデータをどこに保存しますか?

これは、kentico Webサイトで更新テーブルのデータを検索したリンクです。 https://docs.kentico.com/display/K9/Working+with+pages+in+the+API

答えて

4

Kenticoコンテンツテーブル(ページタイプにバインドされたもの)は、常にのみ公表データが含まれています。ワークフロー/バージョン管理を使用している場合は、代わりにCMS_VersionHistoryテーブルに「新しい」データが格納されます。

ソリューションは、のようなものを使って、ページを公開するだけです:

var page = DocumentHelper.GetDocument(1, new TreeProvider()); 
    page.DocumentName = "Update name"; 
    page.Publish(); 
+0

page.Publishのおかげでは、()のトリックを行います。なぜ出版をせずに作品を挿入するのか分かりますか?ありがとう。 – Mahesh

+0

ページの「以前の」バージョンがないため、バージョン履歴にこれらのデータを保存する必要はありません:-) – Enn

1

このページではワークフローを使用しましたか?

DocumentHelper.UpdateDocument(...)を使用して、このページを更新する権限を持っていない可能性がありますので、TreeProviderを指定してみてください。

Here's the link to API how manage the page

関連する問題