本文整理汇总了C#中ISessionImplementor.AddNonExist方法的典型用法代码示例。如果您正苦于以下问题:C# ISessionImplementor.AddNonExist方法的具体用法?C# ISessionImplementor.AddNonExist怎么用?C# ISessionImplementor.AddNonExist使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ISessionImplementor
的用法示例。
在下文中一共展示了ISessionImplementor.AddNonExist方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: RegisterNonExists
private void RegisterNonExists(
Key[ ] keys,
int[ ] owners,
ILoadable[ ] persisters,
ISessionImplementor session
)
{
for( int i = 0; i < keys.Length; i++ )
{
int owner = owners[ i ];
if( owner > -1 )
{
Key ownerKey = keys[ owner ];
if( keys[ i ] == null && ownerKey != null )
{
session.AddNonExist( new Key( ownerKey.Identifier, persisters[ i ] ) );
}
}
}
}
示例2: RegisterNonExists
/// <summary>
/// For missing objects associated by one-to-one with another object in the
/// result set, register the fact that the the object is missing with the
/// session.
/// </summary>
private void RegisterNonExists(
EntityKey[] keys,
ILoadable[] persisters,
ISessionImplementor session
)
{
int[] owners = Owners;
if (owners != null)
{
EntityType[] ownerAssociationTypes = OwnerAssociationTypes;
for (int i = 0; i < keys.Length; i++)
{
int owner = owners[i];
if (owner > -1)
{
EntityKey ownerKey = keys[owner];
if (keys[i] == null && ownerKey != null)
{
bool isOneToOneAssociation = ownerAssociationTypes != null &&
ownerAssociationTypes[i] != null &&
ownerAssociationTypes[i].IsOneToOne;
if (isOneToOneAssociation)
{
// Added to fix NH-687, not in Hibernate:
bool isUniqueKeyReference = ownerAssociationTypes != null &&
ownerAssociationTypes[i] != null &&
ownerAssociationTypes[i].IsUniqueKeyReference;
if (!isUniqueKeyReference)
{
session.AddNonExist(new EntityKey(ownerKey.Identifier, persisters[i]));
}
}
}
}
}
}
}