簡體   English   中英

將常規C#代碼添加到SharePoint 2010網站頁面

[英]Add general C# code to a SharePoint 2010 site page

我想將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頁面都是這樣做的。

我認為使用網站頁面沒有“正確”的方法。 唯一的方法是使用你所說的webparts或用戶控件。 但是,您可以非常輕松地將代碼添加到應用程序頁面 這家伙很好地解釋了這一點

您應該查看MSDN上的SharePoint開發人員模塊

http://www.mssharepointdeveloper.com

如前所述,您可以使用各種方法來自定義SharePoint 2010

  • 的WebParts
  • ApplicationPages或LayoutsPages
  • 自定義MasterPages
  • DelegateControls

有多種方法可以擴展SharePoint,因此它實際上取決於您的情況或您要實現的要求。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM