c# - tools - microsoft dynamics 365 developer toolkit visual studio 2017
No se puede acceder al espacio de nombres Microsoft.Xrm (11)
He descargado CRM Dynamics SDK y lo guardo en un directorio local. En mi código, estoy usando EntityCollection
(entre otras clases relacionadas con el espacio de nombres Xrm), lo que significa que necesito agregar using Microsoft.Xrm.Sdk;
.
El problema es que durante la compilación recibo errores que dicen que:
El tipo o nombre de espacio de nombres ''Xrm'' no existe en el espacio de nombres ''Microsoft'' (¿falta una referencia de ensamblado?)
Por lo tanto, vuelvo a comprobar que la referencia está hecha y, con mucha precisión, veo que microsoft.xrm.sdk
hecho está en mi lista. Solo para estar seguros, lo quité y lo agregué de nuevo apuntando a la DLL con el mismo nombre. Sin embargo, en vano ... Lo que pasa es que mi colega usa el mismo código y compila en su máquina (la única diferencia es que él está en Win 7 y yo en Win 8).
¿Cómo matamos este problema?
Actualizar el paquete NuGet me ayudó a resolver el problema
Como se mencionó anteriormente,
El motivo de ello es que CRM 2015 SDK se creó en .Net 4.5.2 Framework y Visual Studio no es compatible con 4.5.2.
Simplemente descargue .Net Framework 4.5.2 Goto Project Properties y cambie el framework.
Una forma alternativa podría ser reemplazar Microsoft.Xrm.Sdk.dll con un archivo de CRM SDK anterior. Yo uso VS2010, y el archivo SDK de CRM 2011 resolvió todos los errores del compilador.
El proyecto de cambio de PS a .NET 3.5 y volver a 4.0 no ayudó
Después de cambiar a .NET Framework 4 y de cambiar .NET Framework a 3.5 y luego a 4.0, mi proyecto aún no estaba funcionando.
No funcionó cuando seleccioné la opción dada por la ventana "agregar referencia".
Lo que funcionó para mí fue hacer clic en el botón Examinar en la ventana "Agregar referencia" y buscar Microsoft.Xrm.Sdk. archivo dll
El motivo de ello es que CRM 2015 SDK se creó en .Net 4.5.2 Framework y Visual Studio no es compatible con 4.5.2.
Simplemente descargue .Net Framework 4.5.2 Goto Project Properties y cambie el framework.
Es posible que esto no coincida con este problema específico, pero lo agregaré como algo para verificar si otros lo dirigen aquí como lo hizo para mí.
En mi caso, recibí muchos errores como "error CS0234: el tipo o nombre de espacio de nombres ''Cliente'' no existe en el espacio de nombres ''Microsoft.Xrm''".
Al agregar el paquete NuGet "Microsoft.CrmSdk.Extensions" se solucionaron mis problemas de compilación.
Estaba teniendo el mismo problema con mi complemento de CRM 2011. En mi caso, ninguna de las soluciones anteriores funcionó.
En mi código estoy usando la clase enlazada temprana. Al generar este archivo de clase, estaba usando la siguiente línea junto con otras configuraciones que causaban el error.
/codeCustomization:"Microsoft.Xrm.Client.CodeGeneration.CodeCustomization, Microsoft.Xrm.Client.CodeGeneration"
Una vez que agregué este nuevo archivo de clase sin codeCustomization, eliminó todos los errores.
Recibí esto cuando reemplacé mis dlls de crm 2013 con los nuevos de 2015.
Ninguna de las soluciones anteriores funcionó para mí. Pero lo que finalmente me llevó por el camino correcto fue esta advertencia (se enumeró como una advertencia debajo de los errores de espacio de nombres):
La referencia principal "Microsoft.Xrm.Client, Version = 5.0.9689.2166, Culture = neutral, PublicKeyToken = 31bf3856ad364e35, processorArchitecture = MSIL" no se pudo resolver porque se creó contra el marco ".NETFramework, Version = v4.5.2". Esta es una versión más alta que el marco de trabajo actual ".NETFramework, Version = v4.5.1"
Y cuando lo verifiqué, solo tenía .Net 4.5.1 instalado, así que después de instalar .Net 4.5.2 Developper Pack y cambiar el marco de destino de mis proyectos a este, todo funcionó de nuevo.
La actualización regular 4.5.2 no es suficiente para obtener esta versión de .net en VS, necesita el paquete developerper
Fuente: syntaxwarriors.com/2015/…
Tenía .NET 4.0 como marco de trabajo objetivo y tuve este error del compilador. Intenté cambiarlo de nuevo a 3.5 y luego a 4.0 y eso no lo solucionó.
Lo que me solucionó el problema fue eliminar las carpetas bin, obj y tools en el directorio de mi proyecto. No entiendo los detalles de por qué funcionó esto, pero funcionó para mí.
Tuve este error y en mi caso, después de probar todas las soluciones anteriores y otras en la web sin éxito, finalmente llegué a una solución.
El problema estaba en la versión de CRM SDK que estaba usando: 2015 (¡no quiero saber por qué!).
Descargué la versión de CRM 2013 SDK, cambié las referencias del ensamblaje a esa versión y el problema desapareció.
Verifique la configuración de su proyecto para ver qué Marco de destino está utilizando. Si es .NET Framework 4 Client Profile, intente cambiarlo a .NET Framework 4 .
Ya tenía mi marco configurado en .NET Framework 4, por lo que no se aplicó la solución de cambio entre el perfil de 4 clientes y el 4 normal. Un truco que hice fue cambiar .NET Framework a 3.5 y luego volver a 4.0 . Espero que esto ayude a algunas personas.
Thx @ Jason Lattimer. Tu respuesta me dio una pista de cómo resolver mi problema.
¡Buena suerte a los desarrolladores de CRM!