来自c#的JSLINK不起作用

时间:2014-01-10 09:46:07

标签: c# sharepoint sharepoint-2013

我想使用c#将一些自定义渲染客户端(csr)应用于XsltListViewWebPart中的网站列 这是代码:

using (SPSite site = new SPSite("http://sharepoint"))
        {                               
            site.AllowUnsafeUpdates = true;

            SPField Status = web.Fields["Status"];

            Status.JSLink = "~site/_catalogs/masterpage/CustomField.js";
            Status.Update(true);
        }

我收到此错误Updates are currently disallowed on GET requests. To allow updates on a GET, set the 'AllowUnsafeUpdates' property on SPWeb.

SPSecurity.RunWithElevatedPrivileges也不起作用。

当我只是通过浏览器添加列表视图时,CSR工作正常,但当我尝试通过c#添加列表视图时,CSR无法正常工作。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我找到了解释类似问题的链接AllowUnsafeUpdates

无论如何,当我定义网站列时,我已通过visual studio完成了这项工作,我在layouts文件夹中添加了一个csr文件,并通过myview.jslink =“/ _ Layouts / 15 / csr / custom_field.js”应用;

我认为本教程也可以帮助使用csr来保存站点列csr tutorial

  1. 我们无法在同一视图上应用xslt文件和csr文件。所以我删除了xslt文件并将javascript与csr和css结合使用。
  2. 当您使用webpart(c#)中的xsltlistview时,您必须将javascript文件保存在文件夹布局中。此文件的链接必须是/_Layouts/15/folder/myfile.js
  3. 我希望这可以提供帮助。