Selon réflecteur, SPWeb n'est pas scellé en 2007 ou 2010.
2007:
[SharePointPermission(SecurityAction.LinkDemand, ObjectModel=true),
SharePointPermission(SecurityAction.LinkDemand, ObjectModel=true),
SharePointPermission(SecurityAction.LinkDemand, ObjectModel=true),
SharePointPermission(SecurityAction.InheritanceDemand, ObjectModel=true)]
public class SPWeb : IDisposable, ISecurableObject
2010:
[SubsetCallableType,
ClientCallableType(Name="Web", ServerTypeId="{A489ADD2-5D3A-4de8-9445-49259462DCEB}", FactoryType=typeof(SPObjectFactory), ObjectIdentityPropertyName="CanonicalId"),
SharePointPermission(SecurityAction.InheritanceDemand, ObjectModel=true),
SharePointPermission(SecurityAction.LinkDemand, ObjectModel=true),
SharePointPermission(SecurityAction.LinkDemand, ObjectModel=true),
SharePointPermission(SecurityAction.LinkDemand, ObjectModel=true)]
public class SPWeb : SPSecurableObject, IDisposable
Cependant, dans les deux versions, la classe ne dispose que des constructeurs internes, tandis que Visual Studio si vous essayez d'hériter laisser de la classe, il ne compilera pas:
Le type « Microsoft.SharePoint .SPWeb » n'a pas défini les constructeurs
Intéressant. Si vous consultez les documents MSDN pour ces classes, vous pouvez voir clairement que le mot clé sealed n'est pas mentionné (comme c'est le cas pour d'autres classes scellées sur MSDN). –
@justin, c'était une différence entre 2007 et 2010, j'ai mis à jour la réponse –
Mais même si vous passez la documentation MSDN à WSS 3.0 (qui était le WSS utilisé dans SharePoint 2007), ils ne semblent toujours pas scellés. –