本文整理汇总了C#中ClearCanvas.Dicom.Network.ServerAssociationParameters.GetPresentationContexts方法的典型用法代码示例。如果您正苦于以下问题:C# ServerAssociationParameters.GetPresentationContexts方法的具体用法?C# ServerAssociationParameters.GetPresentationContexts怎么用?C# ServerAssociationParameters.GetPresentationContexts使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ClearCanvas.Dicom.Network.ServerAssociationParameters
的用法示例。
在下文中一共展示了ServerAssociationParameters.GetPresentationContexts方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: NegotiateAssociation
private static bool NegotiateAssociation(AssociationParameters cp, ServerAssociationParameters sp)
{
foreach (DicomPresContext clientContext in cp.GetPresentationContexts())
{
TransferSyntax selectedSyntax = null;
foreach (DicomPresContext serverContext in sp.GetPresentationContexts())
{
if (clientContext.AbstractSyntax.Uid.Equals(serverContext.AbstractSyntax.Uid))
{
foreach (TransferSyntax ts in serverContext.GetTransfers())
{
if (clientContext.HasTransfer(ts))
{
selectedSyntax = ts;
break;
}
}
}
if (selectedSyntax != null)
break;
}
if (selectedSyntax != null)
{
clientContext.ClearTransfers();
clientContext.AddTransfer(selectedSyntax);
clientContext.SetResult(DicomPresContextResult.Accept);
}
else
{
// No contexts accepted, set if abstract or transfer syntax reject
clientContext.SetResult(0 == sp.FindAbstractSyntax(clientContext.AbstractSyntax)
? DicomPresContextResult.RejectAbstractSyntaxNotSupported
: DicomPresContextResult.RejectTransferSyntaxesNotSupported);
}
}
bool anyValidContexts = false;
foreach (DicomPresContext clientContext in cp.GetPresentationContexts())
{
if (clientContext.Result == DicomPresContextResult.Accept)
{
anyValidContexts = true;
break;
}
}
if (anyValidContexts == false)
{
return false;
}
return true;
}