Asignación de tipo: Desde proveedor LINQ a SharePoint hasta .NET
Última modificación: miércoles, 02 de febrero de 2011
Hace referencia a: SharePoint Foundation 2010
En este artículo se muestra cómo el proveedor LINQ to SharePoint asigna los tipos de campo (columna) de Microsoft SharePoint Foundation a tipos de Microsoft .NET Framework.
Tabla de asignación de tipos
Tipo de campo |
Tipo .NET |
Comentarios |
---|---|---|
AllDayEvent |
||
Datos adjuntos |
||
Booleano |
||
Calculado |
Tipo del valor devuelto |
|
Elección |
Enum o String |
Vea Campos de una o varias opciones. |
Calculado |
||
ContentTypeId |
Byte[] |
|
Contador |
||
CrossProjectLink |
||
Moneda |
||
DateTime |
||
Archivo |
||
GridChoice |
||
Guid |
||
Entero |
Int32 o Nullable<T>, donde T es Int32. |
|
Búsqueda |
Vea Campos de búsqueda. |
|
MaxItems |
||
ModStat |
||
MultiChoice |
Enum o String marcado |
Vea Campos de una o varias opciones. |
Nota |
||
Número |
||
PageSeparator |
||
Periodicidad |
||
Texto |
||
ThreadIndex |
||
Subproceso |
||
Dirección URL |
||
Usuario |
Un campo Usuario es un campo de búsqueda en la Lista de información del usuario (que es una lista oculta de manera predeterminada). Vea Campos de búsqueda. |
|
WorkflowEventType |
||
WorkflowStatus |
Campos de una o varias opciones
La asignación de tipos de los tipos de campo de una o varias opciones depende de si se permiten las opciones "Rellenar" y de cuántas opciones haya, como se indica en la siguiente tabla:
Opciones Rellenar no permitidas y menos de 31 opciones disponibles |
Opciones Rellenar no permitidas y más de 30 opciones disponibles |
Opciones Rellenar permitidas |
|
---|---|---|---|
Campos de opciones |
Un tipo de Microsoft .NET Framework enum con todas las opciones disponibles numeradas empezando por 1. La enumeración incluye un valor no válido (-1) y un valor ninguno (0). La clase se denomina FieldNameChoices, donde FieldName es el nombre del campo. |
<-- Igual que a la izquierda. |
String. (SPMetal crea una clase sealed que contiene un conjunto de constantes String, una para cada opción disponible). |
Campos de varias opciones |
Igual que el anterior, excepto que se marca la enumeración. |
Igual que a la derecha --> |
IList<String>. (SPMetal crea una clase sealed que contiene un conjunto de constantes String, una para cada opción disponible). |
Campos de búsqueda
La asignación de tipos de los campos Búsqueda y Usuario depende de si el campo permite varios valores o no y de si la lista de objetivo está representada en el código que generó SPMetal; puede que esto no ocurra si se oculta la lista de objetivo o si SPMetal se configura para excluir la lista. En la siguiente tabla se muestran las posibilidades.
Varios valores no permitidos |
Varios valores permitidos |
|
---|---|---|
La lista de objetivo se representa en el código generado |
Cuando la lista de objetivo se representa en el código generado, el campo Búsqueda no se asigna a ningún tipo básico de .NET Framework. SPMetal genera un tipo de campo privado EntityRef<TEntity>, donde TEntity es el tipo de contenido de la lista de objetivo, no el tipo de la columna de destino. Esta propiedad está contenida en una propiedad generada de tipo TEntity. |
Las observaciones de la izquierda se aplican aquí también, excepto que el campo se representa como un campo privado y como una propiedad de tipo EntitySet<TEntity>, donde TEntity es el tipo de contenido de la lista de objetivo. |
La lista de objetivo no se representa en el código generado |
El campo se representa dos veces en la asignación objeto-relacional:
Además, se genera un segundo par de propiedad y campo para representar el campo Id. de la lista de objetivo. El campo y la propiedad son de tipo Nullable<T>, donde T es Int32. |
El campo se representa dos veces en la asignación objeto-relacional:
Además, se genera un segundo par de propiedad IList<T> y campo LookupList<T> para representar el campo Id. de la lista de objetivo. Para ambos, T es Nullable<T>, donde T es Int32. |
Nota
Un campo Usuario es un campo de búsqueda en la Lista de información del usuario. Esta última está oculta, por lo que de manera predeterminada SPMetal no genera código para representarla.