1

umbraco ノードに値を追加する必要があります。私はこのようなことを試しました

Node node = Node.GetCurrent();
node.GetProperty("pass_word").Value = password.ToString()

しかし、読み取り専用であるというエラーがスローされます。

4

2 に答える 2

4

Umbraco はノードのプロパティを umbraco.config と呼ばれる xml ファイルにキャッシュします。NodeFactory を使用してノードのプロパティにアクセスすると、キャッシュから取得されるため、読み取り専用になります。

データベースで見つかったデータを実際に編集してキャッシュに公開するには、Document クラスを使用する必要があります。詳細については、ノードとドキュメントの違いを参照してください。

次に例を示します。

int id = Node.GetCurrent().Id;
Document node = new Document(id);
node.getProperty("pass_word").Value = password.ToString();
node.Publish(new User(0));
umbraco.library.UpdateDocumentCache(id);
于 2013-02-20T08:48:36.140 に答える
2

Umbraco では、ノードとドキュメントの間に違いがあります。ノードは nodeFactory を介して XML ファイル umbraco.config から読み取られ、コンテンツからデータを取得して表示するための最速の方法として使用されます。

Umbraco.config ファイルの XML は、データベース内のドキュメント データから発行されるたびに生成されるため、ノードを変更することはできず、意味がありません。

データベース内のデータを変更する必要がある場合は、ドキュメント タイプを操作する必要があります。ノードとドキュメントの違いについては、この記事を参照してください

于 2013-02-20T08:55:18.530 に答える