在umbraco中发布文档

在umbraco中发布文档,umbraco,umbraco5,Umbraco,Umbraco5,您好,这两个小时以来,我一直在尝试发布一个文档,在保存序列化值时,我在该文档上设置了一些自定义数据类型值:在umbraco中,只有在发布文档后,数据库和umbraco.config文件中才会有数据类型值,因此在自定义文档类型中,我有一个名为“添加用户”的按钮,我希望调用此按钮时将其保存在db中我需要发布我正在使用的文档: //Get the document by it's ID Document d = new Document(currentDocID); //Mark it ready

您好,这两个小时以来,我一直在尝试发布一个文档,在保存序列化值时,我在该文档上设置了一些自定义数据类型值:在umbraco中,只有在发布文档后,数据库和umbraco.config文件中才会有数据类型值,因此在自定义文档类型中,我有一个名为“添加用户”的按钮,我希望调用此按钮时将其保存在db中我需要发布我正在使用的文档:

//Get the document by it's ID
Document d = new Document(currentDocID);

//Mark it ready for publishing
d.Publish(new umbraco.BusinessLogic.User(0));

//Tell the runtime to update the document cache
umbraco.library.UpdateDocumentCache(d.Id);

//call republishing from the api:
umbraco.library.RefreshContent();

//Server.ScriptTimeout = 100000;
//umbraco.cms.businesslogic.web.Document.RePublishAll();
//umbraco.library.RefreshContent();

但它无法更改Umbraco.config文件和数据库文件,而如果通过单击“在Umbraco中发布”来更改,则数据将保存在Umbraco数据库和配置文件中。我无法找出我是否缺少某些内容。

代码示例看起来适合以编程方式保存节点,所缺少的只是一行代码,用于更新已更改的字段,如果在文档类型中别名为“myField”,则意味着更改为:

var myValue = "[{ serialized value that might need escaping }]";

Document d = new Document(currentDocID);
d.getProperty("myField").Value = myValue;
d.Publish(new umbraco.BusinessLogic.User(0));
umbraco.library.UpdateDocumentCache(d.Id);

代码示例看起来适合以编程方式保存节点,只缺少一行代码来更新已更改的字段,如果该字段在文档类型中别名为“myField”,则意味着更改为:

var myValue = "[{ serialized value that might need escaping }]";

Document d = new Document(currentDocID);
d.getProperty("myField").Value = myValue;
d.Publish(new umbraco.BusinessLogic.User(0));
umbraco.library.UpdateDocumentCache(d.Id);

您能否编辑您的问题以添加一些句号/逗号?很难理解你在问什么。您正在尝试以编程方式设置文档属性吗?如果是这样的话,您的代码示例中缺少了这个。您可以编辑您的问题以添加一些句号/逗号吗?很难理解你在问什么。您正在尝试以编程方式设置文档属性吗?如果是这样的话,代码示例中就会缺少这一点。