毫无疑问,我在这里遗漏了一些非常明显的东西 - 但我是 sharepoint 的新手,所以请多多包涵。
我已经成功地添加了一个母版页,创建了一个内容类型,并为我的自定义内容类型创建了一个 aspx 页面 - 但我找不到它的 cs 文件!?
在共享点解决方案中是否有另一种实现代码隐藏的方式?创建控件时似乎是相似的。我习惯于标准的 asp .net c# web 应用程序开发,所有的 aspx 页面都带有“作为标准”的代码隐藏文件。
谢谢。
毫无疑问,我在这里遗漏了一些非常明显的东西 - 但我是 sharepoint 的新手,所以请多多包涵。
我已经成功地添加了一个母版页,创建了一个内容类型,并为我的自定义内容类型创建了一个 aspx 页面 - 但我找不到它的 cs 文件!?
在共享点解决方案中是否有另一种实现代码隐藏的方式?创建控件时似乎是相似的。我习惯于标准的 asp .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 程序集。
Code-Behind 在 2007 和 2010 版本中被设计隐藏。请参阅此处以基于每个位置启用它 (PageParserPath)。
从长远来看,在可支持性、维护和管理方面,如果可以的话,您会更好地遵守 SharePoint 中的约定并使用控件而不是代码隐藏。
您应该在共享点设计器中打开您的sharepoint .aspx
页面并inherit
使用您的 .cs 类添加语句。
就像是 :
<%@ Page Language="C#" MasterPageFile="~masterurl/default.master" Inherits="Namespace.ClassName,Namespace,Version=1.0.0.0, Culture=neutral, PublicKeyToken=tokenid" %>
一件事仍然是早先的@Paul's Answer,您应该基于每个位置启用它(PageParserPath)。
我建议您在 SharePoint 专用网站上提出这个问题。你可以在这里找到它。
但回答您的问题时,至少在 MOSS 2007 中,SharePoint 页面中没有可供您使用的代码。不确定 SharePoint 2010 是否准确,但必须相同。