IVsDataObjectMemberComparer.Compare Method (String, array<Object , Int32, Object)
When implemented by a class, compares one object identifier part with another specified object identifier part.
Namespace: Microsoft.VisualStudio.Data.Services.SupportEntities
Assembly: Microsoft.VisualStudio.Data.Services (in Microsoft.VisualStudio.Data.Services.dll)
Syntax
'Declaration
Function Compare ( _
typeName As String, _
identifier As Object(), _
identifierPart As Integer, _
value As Object _
) As Integer
int Compare(
string typeName,
Object[] identifier,
int identifierPart,
Object value
)
int Compare(
String^ typeName,
array<Object^>^ identifier,
int identifierPart,
Object^ value
)
abstract Compare :
typeName:string *
identifier:Object[] *
identifierPart:int *
value:Object -> int
function Compare(
typeName : String,
identifier : Object[],
identifierPart : int,
value : Object
) : int
Parameters
typeName
Type: System.StringThe name of the identifier type.
identifier
Type: array<System.Object[]An array of identifier parts that identify the data object.
identifierPart
Type: System.Int32The zero-based index into the identifier array indicating which part of the identifier to compare.
value
Type: System.ObjectA value to compare the identifier part against.
Return Value
Type: System.Int32
A value less than zero in cases where the identifier part is less than the specified value; zero if the identifier part is equal to the specified value; a value greater than zero if the identifier part is greater than the specified value.
Remarks
This method should use the same comparison rules as the data source to ensure the correct uniqueness of objects on the client side.
You can handle certain complex situations by passing in the complete source identifier. For example, recent versions of Microsoft SQL Server allow the instance of SQL Server as a whole to be case sensitive on identifier comparison, whereas a particular database on the instance of SQL Server can be case insensitive, or vice versa. This means that when comparing the schema or name of a table (which appear as the second and third parts, respectively, in a full table identifier, the first part being the database), the implementation of this method must use the first identifier part to determine which database the table is in, and thus, what kind of comparison to use.
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.
See Also
Reference
IVsDataObjectMemberComparer Interface
Microsoft.VisualStudio.Data.Services.SupportEntities Namespace