我在code工作。它正在成功运作。 但我面临的问题是:
新列在列表中不可见(我尝试使用With Setting Required =“TRUE”)。
我试着计算可见和不可见列的字段值。 我发现的差异是:可见列(手动创建)不包含版本值。 我正在创建的那些列有它。
所以我尝试将null值传递给“ndVersion.Value”。
但它仍无法正常工作并自动为版本增加一些价值。
你可以帮帮我吗?
我尝试了Here给出的解决方案。
但它再次没有工作。 :(
答案 0 :(得分:2)
当您在浏览器中向列表中添加列时,实际上会发生一些事情:
使用代码添加列时,您可能只是修改列表,而不是内容类型(定义新/编辑表单)或视图(定义列表视图)
var field = list.Fields[fieldName];
var ctype = list.ContentTypes[contentTypeId];
var fieldref = new SPFieldLink(field);
ctype.FieldLinks.Add(fieldref);
ctype.Update();
var view = list.Views[viewName];
view.ViewFields.Add(field);
view.Update();
答案 1 :(得分:0)
尝试将ReadOnly属性设置为“FALSE”
答案 2 :(得分:0)
答案 3 :(得分:0)
我会使用Microsoft.Sharepoint.dll提供的对象模型,而不是使用Web服务。
当您向内容类型添加新列时,Sharepoint中存在问题,这些列的更改并不总是下推到列表中。我认为Sharepoint UI会在您编辑内容类型时为您执行此操作,但是当您在代码中自己执行此操作时,您必须确保将更改下推到列表中。
有两种方法可以通过编程方式将内容类型数据添加到列表中