.net - how - obtener public token dll




¿Cómo encuentro el PublicKeyToken para un dll en particular? (6)

Assembly.LoadFile (@ "C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ system.data.dll"). FullName

Resultará en

System.Data, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089

Necesito recrear un proveedor en mi archivo web.config que se parece a esto:

<membership defaultProvider="AspNetSqlMemProvider">
  <providers>
    <clear/>
    <add connectionStringName="TRAQDBConnectionString" applicationName="TRAQ" minRequiredPasswordLength="7" minRequiredNonalphanumericCharacters="0"
         name="AspNetSqlMemProvider"
         type="System.Web.Security.SqlMembershipProvider, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"
    />
  </providers>
</membership>

Sin embargo, recibo un error de tiempo de ejecución que indica que este ensamblaje no se puede cargar, y creo que es porque tengo el PublicKeyToken incorrecto. ¿Cómo busco PublicKeyToken para mi ensamblaje?

Alternativamente, ¿voy completamente mal con esto?


Al usar PowerShell , puede ejecutar esta declaración:

([system.reflection.assembly]::loadfile("c:\MyDLL.dll")).FullName

La salida proporcionará la Versión, Cultura y PublicKeyToken como se muestra a continuación:

MyDLL, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = 669e0ddf0bb1aa2a


Si tiene la DLL agregada a su proyecto, puede abrir el archivo csproj y ver la etiqueta de referencia.

Ejemplo:

<Reference Include="System.Web.Mvc, Version=3.0.0.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" />

Solo agregué más información, no pude encontrar la utilidad sn.exe en las ubicaciones mencionadas, en mi caso fue en C: \ Archivos de programa (x86) \ Microsoft SDKs \ Windows \ v7.0A \ bin


Usando la utilidad sn.exe :

sn -T YourAssembly.dll

o cargando el conjunto en Reflector .


Utilizo Windows Explorer, navego a C: \ Windows \ assembly, encuentro el que necesito. Desde las Propiedades, puede copiar PublicKeyToken.

Esto no se basa en Visual Studio ni en ninguna otra utilidad que se esté instalando.





publickeytoken