0

我在Sql server 2008 R2中有一个表。在SQL服务器中,我创建了一个有5列的视图。我想在Sharepoint 2010中显示相同的视图。Sharepoint外部列表问题

为了显示目的我使用了BCS和Extenal List,然后在Sharepoint Extenal List中获取所有记录。但在这里,我的问题是,我想再添加一列专用附件。我没有得到任何成功。

现在我正在使用自定义列表。并通过使用SSIS我正在将记录从SQl服务器导出到共享点列表。它具有默认的附件选项,但在这里我的问题是用户能够编辑自定义列表中的剩余列。我希望只有附件和重新生成的列应该是只读的。

中的任何一个,请让我知道了解决方法:

我如何添加附件列到外部列表,进入2010年的Sharepoint。 或。

我怎样才能让另一列只读除Attachement ..

回答

0

您应该能够以编程方式设置字段。您可以在需要时使用事件接收器进行定位。看看这article

当通过对象模型在SharePoint中创建项目时,可以将该字段的只读属性转换为false,以便允许您设置该字段的值,反之亦然。您可以将它们来回设置为只读,非常简单。

// get the list and set modified property to allow writing 
SPWeb web = new SPSite("http://url/to/web").OpenWeb(); 
SPList selectedList = web.Lists["listname"]; 
selectedList.Fields["Modified"].ReadOnlyField = false; 
selectedList.Fields["Modified"].Update(); 


// set the item 
SPItem newItem = selectedList.Items[0]; 
newItem["Modified"] = DateTime.Now; 
newItem.Update(); 

// Set readonly back to true 
selectedList.Fields["Modified"].ReadOnlyField = true; 
selectedList.Fields["Modified"].Update();