我想将 C# 类添加到现有的 SharePoint 2010 网站页面。通过 SharePoint UI 或 SharePoint Designer 创建的网站页面上有一个 Web 部件,我想访问它并编辑它的属性。我可以在 Visual Studio 中制作一个不可见的 Web 部件,将其部署到页面上,然后运行我想以这种方式运行的代码,但我觉得这可能是一种不好的做法(或者是)?
我在谈论一般的非 SharePoint .aspx 页面如何引用 C# 文件,如下所示:
<%@ Page language="C#" Inherits="System.Web.UI.Page" CodeFile="Example.cs" %>
是否会向 .aspx 文件中添加类似上面的行? .cs 文件实际上是如何部署在 SharePoint 网站上的?最后,这可能吗?
我是 SharePoint 和这个网站的新手,非常感谢所有帮助!
最佳答案
默认情况下,出于安全原因,SharePoint 不支持常规页面中的代码隐藏文件(尽管如 alfonso 所述,应用程序页面支持内联代码和文件隐藏代码)。您可以在 web.config 中覆盖此设置,但这不是一个好的做法。
您当然可以创建另一个 Web 部件来执行您想要的操作。我以前做过类似的事情。但通常,当我想更改自定义页面的行为时,我会更改 Page 指令的 Inherits 属性:
<%@ Page
language="C#"
DynamicMasterPageFile="~masterurl/default.master"
Inherits="MyNamespace.MyClass, MyAssembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"
%>
创建您的类,让它继承自 System.Web.UI.Page
,然后将其部署到 GAC。这不仅受支持,而且大多数开箱即用的 SharePoint 页面也是这样做的。
关于c# - 将通用 C# 代码添加到 SharePoint 2010 网站页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7112787/