Diferencias entre los modelos de objetos administrados y de ECMAScript

Última modificación: jueves, 15 de julio de 2010

Hace referencia a: SharePoint Foundation 2010

Disponible en SharePoint Online

Debe conocer las importantes diferencias que hay entre el modelo de objetos de ECMAScript (JavaScript, JScript) y el modelo de objetos cliente administrados que se muestran a continuación.

  • Puede que la firma del método sea diferente, como con el constructor ClientContext() (JavaScript: ClientContext(serverRelativeUrl)). En JavaScript, este constructor toma una dirección URL relativa a un servidor o un Uri.

  • Los dos modelos de objetos usan distintos tipos de valores de datos. El modelo de objetos de JavaScript no tiene equivalentes para todos los tipos de valores de datos del modelo de objetos administrados por .NET Framework. JavaScript considera StringCollection como string[]. Por otro lado, JavaScript tiene algunos valores que .NET Framework no tiene, como NaN o infinidad negativa y positiva.

  • El modelo de objetos de JavaScript permite la autenticación de formulario. Sin embargo, no es posible especificar el mecanismo de autenticación para la conexión con el servidor. Para obtener información acerca de los modelos de objetos cliente administrados y la autenticación de formularios, vea Autenticación en los modelos de objetos cliente administrados.

  • Cuando crea un elemento y lo agrega a una colección existente, no se pueden realizar más actualizaciones con esa colección mientras la consulta está pendiente. Este problema está relacionado con la adición de un elemento a una colección; de lo contrario, varios clientes podrían leer y escribir simultáneamente los elementos que hay dentro de una colección.

  • Como parte de la seguridad general, no se puede usar el modelo de objetos de JavaScript en una página para trabajar con datos de Microsoft SharePoint Foundation 2010 a no ser que la página contenga un control de síntesis de formulario, por ejemplo <SharePoint:FormDigest runat="server"/>.

  • Generalmente no se pueden compartir variables entre ámbitos. Por lo tanto, no se pueden usar patrones de codificación comunes para instrucciones try/catch/finally.

  • Un objeto RoleDefinitionBindingCollection que se usó en la creación de asignaciones de roles no tiene identidad de objeto. Por lo tanto, si crea un nuevo objeto RoleDefinitionBindingCollection y, a continuación, intenta usarlo después de crear una asignación de roles, se devuelve un error.

  • Algunas comparaciones que no distinguen entre mayúsculas y minúsculas no funcionan de la misma manera en el cliente y en el servidor. Algunas comparaciones del lado servidor usan la configuración regional del sitio web para realizar una comparación, pero el cliente puede usar únicamente la referencia cultural de todos los idiomas para evitar idas y vueltas frecuentes.  SharePoint Foundation 2010 no admite comparaciones que no distingan entre mayúsculas y minúsculas si el servidor usa una configuración regional de sitio web.

  • Debido a las limitaciones de un postback asincrónico, es posible que encuentre que el script incluido no se llame cuando la página está en algunos modos, como por ejemplo cuando una página wiki está en modo de edición. En este caso, use un control ScriptManager y su método RegisterStartupScript() para registrar un bloqueo de script de inicio para ejecutar el código, en lugar de usar script incluido.

Vea también

Conceptos

Introducción a la recuperación de datos

Autenticación en los modelos de objetos cliente administrados

Distribución e implementación del modelo de objetos cliente

Tareas comunes de programación

Otros recursos

Biblioteca de clases de cliente

Biblioteca de clases de ECMAScript

Uso del modelo de objetos de cliente administrado de SharePoint Foundation 2010

Centro de recursos del modelo de objetos de cliente