I am confused by these two. They may contain similar information but the ways to get the values out of them seem a bit different.
The Pro help states clearly: Layer.connectionProperties is a layer's data source connection information as a Python dictionary. Workspace describe.connectionProperties is a property set.
I do not understand the difference of getting values out of them. See sample code below. Thanks.
Here is the sample code to get layer connection properties:
conn_prop=layer.connectionProperties
conn_info=conn_prop['connection_info'] #db_connection_properties']
instance =conn_info['db_connection_properties'] #giswpddev
print(conn_info)
version=conn_info['version']
print (version)
print(instance)
Print(conn_prop)
Here is the sample code workspace describe connection properties:
desc=arcpy.Describe(workspace_sde)
print("%-24s %s" % ("Connection String:", desc.connectionString))
print("%-24s %s" % ("WorkspaceFactoryProgID:", desc.workspaceFactoryProgID))
print("%-24s %s" % ("Workspace Type:", desc.workspaceType))
cp = desc.connectionProperties
print(cp) #this return an empty object
print("\nDatabase Connection Properties:")
print("%-12s %s" % (" Server:", cp.server))
print("%-12s %s" % (" Instance:", cp.instance))
#print("%-12s %s" % (" Database:", cp.database))
print("%-12s %s" % (" User:", cp.user))
print("%-12s %s" % (" Version:", cp.version))