sharepoint aspx页面的代码隐藏在哪里?

毫无疑问,我在这里遗漏了一些非常明显的东西 – 但我是分享点的新手所以请耐心等待。

我已经成功添加了一个母版页,创建了一个内容类型,并为我的自定义内容类型创建了一个aspx页面 – 但我找不到它的cs文件!?

还有另一种方法可以在sharepoint解决方案中实现代码隐藏吗? 创建控件时似乎相似。 我习惯于标准的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页面,你会看到,虽然有些页面有内联代码(在布局中允许),但几乎每个页面都inheritance自一个类SharePoint程序集。

Code-Behind在2007年和2010年版本中都被设计隐藏。 请参阅此处以按位置启用它(PageParserPath)。

从长远来看,在支持性,维护和管理方面你会更好,坚持使用SharePoint中的约定并使用控件而不是代码隐藏,如果可以的话。

您应该在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" %> 

有一件事仍然像早期的@Paul的回答你应该在每个位置(PageParserPath)启用它。

我建议您在SharePoint专用站点中询问此问题。 你可以在这里找到它。

但是回答你的问题,在SharePoint页面中没有可用的代码,至少在MOSS 2007中。不确定SharePoint 2010,但必须是相同的。