Re: casting type for objectGuid
From: Joe Kaplan \(MVP - ADSI\) (joseph.e.kaplan_at_removethis.accenture.com)
Date: 05/28/05
- Previous message: IkBenHet: "Re: Problem with uploading Image files."
- In reply to: dl: "Re: casting type for objectGuid"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]
Date: Sat, 28 May 2005 10:11:30 -0500
That's not what I said to do though. It should go like this:
Guid objectGuid = new Guid((byte[]) resEnt.Properties["objectGUID"][0]);
dr[i] = objectGuid.ToString("B");
ToString("B") will give you the GUID in "COM" format with { }. You can also
do ToString("D") if you don't want the {}.
I'd suggest not using the NativeGuid property for this. It will give you
the objectGUID as an octet string in binary order, but that is likely to
confuse SQL server which is likely to expect it in string format.
You can use the Guid property if you want though. It works fine. The nice
thing about the syntax above is that it works equally well with
DirectoryEntry and SearchResult objects.
HTH,
Joe K.
<dl> wrote in message news:%23nFgYK3YFHA.4088@TK2MSFTNGP15.phx.gbl...
> Hi Joe
> The problem with datatable is whenever I try to assign with the following
> statement I get a casting error
> dr[i] = (string)resEnt.Properties["objectGuid"][0];
>
> I saw an example that can write NativeGuid directly from the returned
> directoryentry, as below, does it mean I instantiate another
> directoryEntry
> instance and simply assign this NativeGuid to a string variable?
>
> TIA
>
> String myADSPath =
> "LDAP://onecity/CN=Users,DC=onecity,DC=corp,DC=fabrikam,DC=com";
> DirectoryEntry myDirectoryEntry=new
> DirectoryEntry(myADSPath,UserName,SecurelyStoredPassword);
>
> // Display the Guid and NativeGuid.
> Console.WriteLine("The GUID of the ADS object:"+
> myDirectoryEntry.Guid);
> Console.WriteLine("The Native GUID of the ADS"+
> "object:"+myDirectoryEntry.NativeGuid);
>
>
> "Joe Kaplan (MVP - ADSI)" <joseph.e.kaplan@removethis.accenture.com> wrote
> in message news:ubyIYssYFHA.980@TK2MSFTNGP12.phx.gbl...
>> In AD/S.DS, objectGUID is returned from a DirectoryEntry or SearchResult
> as
>> a byte array. You would want to cast that to a byte array, then pass
>> that
>> byte array to the constructor on a Guid structure. That will give you a
>> valid .NET Guid.
>>
>> I can't remember the exact syntax to pass it into SQL to get it set up as
> a
>> UniqueIdentifier column (which is the correct SQL type for a GUID), but
>> as
> I
>> recall, you pass it in your query as a String. Call the ToString method
> on
>> the Guid to get this.
>>
>> HTH,
>>
>> Joe K.
>>
>> <dl> wrote in message news:Olh5aApYFHA.3220@TK2MSFTNGP14.phx.gbl...
>> > Hi
>> > I am trying to put a user's objectGuid as the primary key onto a
> datatable
>> > and be used as the unique key on editing / updating. But I seem to get
>> > casting error with the following statement
>> > dt.Columns.Add(new DataColumn("object_Guid", typeof(string)));
>> >
>> > Any idea?
>> >
>> > TIA
>> >
>> > --
>> >
>> >
>> >
>>
>>
>
>
- Previous message: IkBenHet: "Re: Problem with uploading Image files."
- In reply to: dl: "Re: casting type for objectGuid"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]
Relevant Pages
|
|