毫無疑問,我錯過了一些非常明顯的東西 - 但我是新來的分享點,請耐心等待。Sharepoint aspx頁面的代碼隱藏在哪裏?
我已經成功地添加了一個母版頁,創建了一個內容類型,併爲我的自定義內容類型創建了一個aspx頁面 - 但是我找不到它的cs文件!
代碼隱藏是否有其他方式在Sharepoint解決方案中實現?創建控件時似乎很相似。我習慣於使用標準的.net c#web應用程序開發,所有的aspx頁面都帶有代碼隱藏文件'作爲標準。'
謝謝。
毫無疑問,我錯過了一些非常明顯的東西 - 但我是新來的分享點,請耐心等待。Sharepoint aspx頁面的代碼隱藏在哪裏?
我已經成功地添加了一個母版頁,創建了一個內容類型,併爲我的自定義內容類型創建了一個aspx頁面 - 但是我找不到它的cs文件!
代碼隱藏是否有其他方式在Sharepoint解決方案中實現?創建控件時似乎很相似。我習慣於使用標準的.net c#web應用程序開發,所有的aspx頁面都帶有代碼隱藏文件'作爲標準。'
謝謝。
在SharePoint中,您可以擁有代碼隱藏類,但它需要位於程序集中,而不是aspx.cs代碼隱藏文件中。
使用Visual Studio 2010中,您的aspx頁面Page指令會是這個樣子:
<%@ Page
Language="C#"
DynamicMasterPageFile="~masterurl/default.master"
Inherits="MyNamspace.MyPage, $SharePoint.Project.AssemblyFullName$"
%>
然後,您可以創建一個MyNamspace.MyPage
類,做一切你會在常規代碼隱藏文件做。
如果您在14 hive \ TEMPLATE \ LAYOUTS目錄中查看開箱即用的aspx頁面,您會看到,雖然有些頁面具有內嵌代碼(允許在佈局中使用),但幾乎每個頁面都從一個SharePoint程序集中的類。
我建議你在SharePoint專用網站上提問。你可以找到它here。
但是,回答你的問題,至少在MOSS 2007中,SharePoint頁面中沒有可用的代碼。不確切知道SharePoint 2010,但必須相同。
非常感謝Dante,感謝回覆。 – 2012-04-18 09:48:29
Code-Behind隱藏在2007和2010版本的設計中。請參閱here以按位置爲基礎啓用它(PageParserPath)。
長期來看,在支持性,維護和管理方面,如果可以的話,堅持SharePoint中的約定並使用控件而不是代碼隱藏,會更好。
非常感謝保羅!是的,無論如何 - 我會做什麼是關於共享點開發的最佳做法 - 我只是想知道爲什麼它是這種情況。很顯然,我使用C#爲我的頁面添加了服務器端功能,因此現在將所有責任轉移到Web控件似乎對我來說是陌生的 - 我真的不明白爲什麼會出現這種情況。無論如何,我會繼續閱讀,再次感謝。 – 2012-04-18 10:01:03
您應該在sharepoint designer中打開您的sharepoint .aspx
頁面,並在您的.cs類中添加inherit
語句。
類似:
<%@ Page Language="C#" MasterPageFile="~masterurl/default.master" Inherits="Namespace.ClassName,Namespace,Version=1.0.0.0, Culture=neutral, PublicKeyToken=tokenid" %>
有一件事是繼續作爲較早@保羅的回答,你應該啓用它在每個位置的基礎(PageParserPath)。
但我假設使用代碼隱藏是'灰心'(或至少不像在標準的asp.net解決方案中那樣鼓勵),因爲我們必須採取這些額外措施來啓用它,這是對?非常感謝您的回覆@Jigs。 – 2012-04-18 10:13:03
非常感謝您的回覆豐富 - 感謝。那麼爲什麼這與標準的asp.net項目不同呢?爲什麼所有這些都會變成一團糟,而不是像標準的代碼隱藏類那樣? – 2012-04-19 07:51:17
因爲SharePoint頁面可以添加/在SharePoint Designer,甚至通過瀏覽器,內嵌代碼和代碼隱藏頁面修改是不允許的安全,性能,甚至功能上的原因。有關差異的詳細信息,請參見ASP.NET主場迎戰的SharePoint:頁面開發(http://msdn.microsoft.com/en-us/library/ff512772.aspx) – 2012-04-19 12:04:03
得到錯誤'無法加載程序集「 $ SharePoint.Project.AssemblyFullName $」。確保在訪問該頁面之前進行了編譯.'我在aspx文件所在的文件夾中添加了.cs文件。我也是SP的新手。 – shashwat 2013-10-23 09:21:55