Класс EntityRef<TEntity>
Обеспечивает отложенную загрузку и связь для одной стороны отношения «один ко многим».
Иерархия наследования
System.Object
Microsoft.SharePoint.Linq.EntityRef<TEntity>
Пространство имен: Microsoft.SharePoint.Linq
Сборка: Microsoft.SharePoint.Linq (в Microsoft.SharePoint.Linq.dll)
Синтаксис
'Декларация
<DataContractAttribute> _
Public NotInheritable Class EntityRef(Of TEntity As Class) _
Implements ICloneable
'Применение
Dim instance As EntityRef(Of TEntity)
[DataContractAttribute]
public sealed class EntityRef<TEntity> : ICloneable
where TEntity : class
Параметры типов
- TEntity
Тип сущности, на одной стороны связи.
Замечания
Например пусть существует список клиентов имеет столбец SalesRepresentative , который является полем подстановки в список Сотрудники отдела продаж . Каждый клиент имеет один продажи представитель, поэтому только одного значения, разрешены в поле SalesRepresentative ; но многие клиенты назначаются же представителя, поэтому это отношение многие к одному. Для реализации отложенной загрузки, свойство ClientRepresentative создает оболочку для частных EntityRef<TEntity> поле, где TEntity — SalesStaff, вместо закрытого поля типа SalesStaff.
Примеры
В следующем примере реализация сценарий, описанный выше:
[ContentType(Name="Item", Id="0x01", List="Clients")]
public partial class ClientsItem : Item
{
private EntityRef<SalesStaff> _clientRepresentative;
[Association(Name="ClientRepresentative", Storage="_city", MultivalueType=AssociationType.Single, List="Sales Staff")]
public SalesStaff ClientRepresentative {
get {
return this._clientRepresentative.GetEntity();
}
set {
this._clientRepresentative.SetEntity(value);
}
}
// Other members omitted for readability.
}
<ContentType(Name:="Item", Id:="0x01", List:="Clients")>
Partial Public Class ClientsItem
Inherits Item
Private _clientRepresentative As EntityRef(Of SalesStaff)
<Association(Name:="ClientRepresentative", Storage:="_city", MultivalueType:=AssociationType.Single, List:="Sales Staff")>
Public Property ClientRepresentative() As SalesStaff
Get
Return Me._clientRepresentative.GetEntity()
End Get
Set(ByVal value As SalesStaff)
Me._clientRepresentative.SetEntity(value)
End Set
End Property
' Other members omitted for readability.
End Class
Потокобезопасность
Любые общедоступные элементы static (Shared в Visual Basic) этого типа являются потокобезопасными. Не гарантируется, что любые элементы экземпляров потокобезопасны.