Share via


Optimización del rendimiento del código

Última modificación: miércoles, 07 de octubre de 2009

Hace referencia a: SharePoint Foundation 2010

Evite crear y destruir objetos innecesariamente en código, ya que esto puede requerir que las consultas adicionales se realicen en la base de datos y pueden incluso implicar el uso de código incorrecto.

En el ejemplo siguiente, deben crearse instancias de objetos independientes para Tasks list cada vez que el indizador se use para establecer las propiedades y se llame al método para la actualización. Éste no es un procedimiento recomendado.

Ejemplo: (no recomendado)

Dim myWeb As SPWeb = SPContext.Current.Web

myWeb.Lists("Tasks").Title = "List_Title"
myWeb.Lists("Tasks").Description = "List_Description"
myWeb.Lists("Tasks").Update()
SPWeb myWeb = SPContext.Current.Web;

myWeb.Lists["Tasks"].Title = "List_Title";
myWeb.Lists["Tasks"].Description = "List_Description";
myWeb.Lists["Tasks"].Update();

El ejemplo siguiente se crea una instancia del objeto Tasks list sólo una vez y se asigna a la variable myList para establecer las propiedades y llamar al método.

Ejemplo: (recomendado)

Dim myWeb As SPWeb = SPContext.Current.Web

Dim myList As SPList = myWeb.Lists("Tasks")

myList.Title="List_Title"
myList.Description="List_Description"
myList.Update()
SPWeb myWeb = SPContext.Current.Web;

SPList myList = myWeb.Lists["Tasks"];

myList.Title="List_Title";
myList.Description="List_Description";
myList.Update();

El ejemplo anterior necesita una directiva using (Imports en Visual Basic) para el espacio de nombres Microsoft.SharePoint.

Los modelos de objetos del ensamblado Microsoft.SharePoint optimizan el rendimiento y minimizan el número de consultas SQL que se realizan. Sin embargo, para supervisar el rendimiento de código, se recomienda usar el Analizador de SQL Server.

Para devolver un solo elemento de una colección, use siempre un método Get* cuando se proporcione uno a través de un objeto primario, en lugar de procesar una iteración de toda la colección y usar un indizador. Por ejemplo, la clase SPWeb proporciona métodos GetFile,GetFolder y GetListItem que se pueden usar para devolver elementos individuales.

Vea también

Conceptos

Tareas de desarrollo de SharePoint: procedimiento para...

Trabajar con objetos de listas y colecciones