以编程方式设置sharepoint listitem的字段值

Dyn*_*nde 7 c# sharepoint sharepoint-2007 spfield

我试图简单地将一个简单的文本或超链接字段添加到sharepoint 2007中的列表项.

我可以添加字段没问题:

list.Fields.Add("MyField",SPFieldType.Text, false);
Run Code Online (Sandbox Code Playgroud)

它在我的列表项上显示正常.但无论我尝试哪种方式,我都无法以编程方式为该字段设置值.我试过了:

list.items[0]["MyField"] = "text";
Run Code Online (Sandbox Code Playgroud)

我尝试加载到一个字段:

SPField field = list.items[0].Fields["MyField"];
Run Code Online (Sandbox Code Playgroud)

并将其设置在那里,并设置默认值和更新,但没有任何事情发生.

我总是用list.update()完成我的代码块; 或者如果我正在对项目本身进行操作item.update(); 所以我至少不会错过这一点.谁能告诉我我做错了什么?

谢谢

Ric*_*ema 10

尝试:

SPListItem item = list.items[0];
item["MyField"] = "text";
item.Update();
Run Code Online (Sandbox Code Playgroud)

虽然它看似相同,但上面的代码与以下代码不同:

list.items[0]["MyField"] = "text";
list.items[0].Update();
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请参阅此处此处了解记录相同行为的人员.