Basta ya de buscar por todo internet porque llegaste al sitio justo, poseemos la respuesta que necesitas y sin liarte.
Copie la dll de C:Users
a tu proyecto. Haga clic derecho en el archivo y haga clic en Propiedades. Establezca “Copiar en el directorio de salida” en “Copiar siempre”.
Cuando instalas el Microsoft.SqlServer.Types
paquete nuget, esto debería crear una nueva carpeta en la raíz:
SqlServerTypes
|_x64
|_x86
que debe contener los dll apropiados. También es configuración automática para copia si es mas nuevo.
Luego, asegúrese de que su aplicación cargue el ensamblado adecuado:
- Para aplicaciones web ASP.NET:
SqlServerTypes.Utilities.LoadNativeAssemblies(Server.MapPath("~/bin"));
- Para aplicaciones de escritorio/otros:
SqlServerTypes.Utilities.LoadNativeAssemblies(AppDomain.CurrentDomain.BaseDirectory);
Sin embargo, no estoy seguro de si esto funciona con .NET Core.
Para aquellos que están viendo un conjunto de errores muy similar, algo como:
No se pudo copiar el archivo “…SqlServerTypesx64SqlServerSpatial140.dll” porque no se encontró
Si instaló Microsoft.SqlServer.Types a través de NuGet y su aplicación funciona localmente, pero obtiene errores al compilar a través de Azure DevOps, simplemente debe agregar los dll al control de código fuente. Como señaló @Pure.Krome, estos dlls existen localmente en:
Sin embargo, tenga en cuenta que, de forma predeterminada, estos dlls se ignoran (icono rojo a la izquierda). Haga clic derecho en los dlls ignorados y seleccione Add Ignored File to Source Control…
luego confirme y envíe sus cambios, ¡luego ponga en cola una nueva compilación! Nota: Su solución puede contener varios proyectos y cada uno puede tener su propia carpeta SqlServerTypes.
Si estás contento con lo expuesto, tienes la habilidad dejar un artículo acerca de qué le añadirías a este artículo.