本文整理汇总了C#中IBlob.UnWrap方法的典型用法代码示例。如果您正苦于以下问题:C# IBlob.UnWrap方法的具体用法?C# IBlob.UnWrap怎么用?C# IBlob.UnWrap使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IBlob
的用法示例。
在下文中一共展示了IBlob.UnWrap方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: lock
/// <summary>
/// Retrieves the octet position in the <c>BLOB</c> value designated
/// by this <c>IBlob</c> object at which <c>pattern</c> begins. The
/// search begins at position <c>start</c>.
/// </summary>
/// <param name="pattern">
/// The <c>IBlob</c> object designating the <c>BLOB</c> value for
/// which to search.
/// </param>
/// <param name="start">
/// The position in the <c>BLOB</c> value at which to begin searching;
/// the first position is 1.
/// </param>
/// <returns>
/// The position at which the pattern begins, else -1.
/// </returns>
/// <exception cref="HsqlDataSourceException">
/// If there is an error accessing the <c>BLOB</c> value.
/// </exception>
long IBlob.Position(IBlob pattern, long start)
{
lock (this)
{
CheckFree();
try
{
java.sql.Blob wrapped = pattern.UnWrap() as java.sql.Blob;
if (wrapped == null)
{
long length = pattern.Length;
if (length > int.MaxValue)
{
throw new ArgumentException(
"Maximum input length exceeded: " + length,
"pattern");
}
byte[] bytes = pattern.GetBytes(0, (int)length);
return ((IBlob)this).Position(bytes, start);
}
else
{
return m_blob.position(wrapped, start);
}
}
catch (java.sql.SQLException se)
{
throw new HsqlDataSourceException(se);
}
catch (java.lang.Exception e)
{
throw new HsqlDataSourceException(e.toString(), e);
}
}
}