Registro de funciones de ensamblado

20/11/2007 - 10:35 por Carlos Sancho | Informe spam
Hola a todos

En Visual Studio 2005, bajo C#, tengo el siguiente y simple código:

using System.IO;

namespace LibreriasVarias

{

public static class funciones

{


public static int crear_directorio(string path)

{

DirectoryInfo di;

di=Directory.CreateDirectory(path);

if (di.Exists)

return 1;

else

return 0;

}

public static void eliminar_directorio(string path)

{

Directory.Delete(path, true);

}



}

}



Genero la DLL y la registro como ensamblado en una base de datos de SQL
server 2005.
Para registrar la primera funcion hago:

CREATE FUNCTION crear_dir
(
@path nvarchar(400)
)
RETURNS INT
AS EXTERNAL NAME [Miensamblado].[funciones].[crear_directorio]

pero SQL me devuelve el error: NO SE ENCUENTRA EL TIPO funciones EN EL
ENSAMBLADO [Miensamblado]. ¿Alguién sabe por qué?

Muchas Gracias por cualquier sugerencia

Saludos


Carlos Sancho

Preguntas similare

Leer las respuestas

#1 Maxi
20/11/2007 - 14:29 | Informe spam
Carlos, agunos detalles, si hiciste todo desde VS te deberia hasta haber
creado la funcion solo cuando haces el deploy, si generaste el dll lo
primero que tenes que crear es el assembly y ademas tene cuidado cuando
creas la funcion porque es todo case sensitive tambien para TSQL en esa
deficion :(


-
Microsoft M.V.P en SQLServer
SQLTotal Consulting - Servicios en SQLServer
Email:
"Carlos Sancho" escribió en el mensaje
news:%
Hola a todos

En Visual Studio 2005, bajo C#, tengo el siguiente y simple código:

using System.IO;

namespace LibreriasVarias

{

public static class funciones

{


public static int crear_directorio(string path)

{

DirectoryInfo di;

di=Directory.CreateDirectory(path);

if (di.Exists)

return 1;

else

return 0;

}

public static void eliminar_directorio(string path)

{

Directory.Delete(path, true);

}



}

}



Genero la DLL y la registro como ensamblado en una base de datos de SQL
server 2005.
Para registrar la primera funcion hago:

CREATE FUNCTION crear_dir
(
@path nvarchar(400)
)
RETURNS INT
AS EXTERNAL NAME [Miensamblado].[funciones].[crear_directorio]

pero SQL me devuelve el error: NO SE ENCUENTRA EL TIPO funciones EN EL
ENSAMBLADO [Miensamblado]. ¿Alguién sabe por qué?

Muchas Gracias por cualquier sugerencia

Saludos


Carlos Sancho


Respuesta Responder a este mensaje
#2 Gux (MVP)
20/11/2007 - 15:55 | Informe spam
Coincido con lo que dijo Maxi.

Si usted publica el ensamblado directamente desde su proyecto VS2005 hacia
SQL Server, se hace la registración adecuadamente y no tiene nigún tipo de
error.

Lo está haciendo de otra manera?

Gustavo Larriera, Microsoft MVP
https://mvp.support.microsoft.com/profile/gux
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Carlos Sancho" wrote:

Hola a todos

En Visual Studio 2005, bajo C#, tengo el siguiente y simple código:

using System.IO;

namespace LibreriasVarias

{

public static class funciones

{


public static int crear_directorio(string path)

{

DirectoryInfo di;

di=Directory.CreateDirectory(path);

if (di.Exists)

return 1;

else

return 0;

}

public static void eliminar_directorio(string path)

{

Directory.Delete(path, true);

}



}

}



Genero la DLL y la registro como ensamblado en una base de datos de SQL
server 2005.
Para registrar la primera funcion hago:

CREATE FUNCTION crear_dir
(
@path nvarchar(400)
)
RETURNS INT
AS EXTERNAL NAME [Miensamblado].[funciones].[crear_directorio]

pero SQL me devuelve el error: NO SE ENCUENTRA EL TIPO funciones EN EL
ENSAMBLADO [Miensamblado]. ¿Alguién sabe por qué?

Muchas Gracias por cualquier sugerencia

Saludos


Carlos Sancho



Respuesta Responder a este mensaje
#3 Carlos Sancho
20/11/2007 - 18:30 | Informe spam
No, lo intento desde el propio SQL Server. ¿cómo se hace desde VS2005?

Gracias por la respuesta anterior y Gracias por cualquier sugerencia a esta
última pregunta.

Saludos

Carlos Sancho

"Gux (MVP)" escribió en el mensaje
news:
Coincido con lo que dijo Maxi.

Si usted publica el ensamblado directamente desde su proyecto VS2005 hacia
SQL Server, se hace la registración adecuadamente y no tiene nigún tipo de
error.

Lo está haciendo de otra manera?

Gustavo Larriera, Microsoft MVP
https://mvp.support.microsoft.com/profile/gux
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Carlos Sancho" wrote:

Hola a todos

En Visual Studio 2005, bajo C#, tengo el siguiente y simple código:

using System.IO;

namespace LibreriasVarias

{

public static class funciones

{


public static int crear_directorio(string path)

{

DirectoryInfo di;

di=Directory.CreateDirectory(path);

if (di.Exists)

return 1;

else

return 0;

}

public static void eliminar_directorio(string path)

{

Directory.Delete(path, true);

}



}

}



Genero la DLL y la registro como ensamblado en una base de datos de SQL
server 2005.
Para registrar la primera funcion hago:

CREATE FUNCTION crear_dir
(
@path nvarchar(400)
)
RETURNS INT
AS EXTERNAL NAME [Miensamblado].[funciones].[crear_directorio]

pero SQL me devuelve el error: NO SE ENCUENTRA EL TIPO funciones EN EL
ENSAMBLADO [Miensamblado]. ¿Alguién sabe por qué?

Muchas Gracias por cualquier sugerencia

Saludos


Carlos Sancho



Respuesta Responder a este mensaje
#4 Maxi
20/11/2007 - 18:58 | Informe spam
Hola, simple, abre el proyecto y luego hagas "Deploy"


-
Microsoft M.V.P en SQLServer
SQLTotal Consulting - Servicios en SQLServer
Email:
"Carlos Sancho" escribió en el mensaje
news:ONiI%
No, lo intento desde el propio SQL Server. ¿cómo se hace desde VS2005?

Gracias por la respuesta anterior y Gracias por cualquier sugerencia a
esta última pregunta.

Saludos

Carlos Sancho

"Gux (MVP)" escribió en el mensaje
news:
Coincido con lo que dijo Maxi.

Si usted publica el ensamblado directamente desde su proyecto VS2005
hacia
SQL Server, se hace la registración adecuadamente y no tiene nigún tipo
de
error.

Lo está haciendo de otra manera?

Gustavo Larriera, Microsoft MVP
https://mvp.support.microsoft.com/profile/gux
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Carlos Sancho" wrote:

Hola a todos

En Visual Studio 2005, bajo C#, tengo el siguiente y simple código:

using System.IO;

namespace LibreriasVarias

{

public static class funciones

{


public static int crear_directorio(string path)

{

DirectoryInfo di;

di=Directory.CreateDirectory(path);

if (di.Exists)

return 1;

else

return 0;

}

public static void eliminar_directorio(string path)

{

Directory.Delete(path, true);

}



}

}



Genero la DLL y la registro como ensamblado en una base de datos de SQL
server 2005.
Para registrar la primera funcion hago:

CREATE FUNCTION crear_dir
(
@path nvarchar(400)
)
RETURNS INT
AS EXTERNAL NAME [Miensamblado].[funciones].[crear_directorio]

pero SQL me devuelve el error: NO SE ENCUENTRA EL TIPO funciones EN EL
ENSAMBLADO [Miensamblado]. ¿Alguién sabe por qué?

Muchas Gracias por cualquier sugerencia

Saludos


Carlos Sancho









Respuesta Responder a este mensaje
#5 Gux (MVP)
20/11/2007 - 19:07 | Informe spam
Desde VS2005 simplemente usted crea un proyecto de tipo Visual Basic /
Database o de tipo C# / Database. Ese tipo de proyectos le permite a usted
escribir código .NET para ser usado dentro de la base de datos.

Desde la solución del proyecto usted puede instalar todo el código
directamente en la base de datos.

Lea los detalles acá:

http://msdn2.microsoft.com/es-es/library/c8dbfz8s(VS.80).aspx

Gustavo Larriera, Microsoft MVP
https://mvp.support.microsoft.com/profile/gux
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Carlos Sancho" wrote:

No, lo intento desde el propio SQL Server. ¿cómo se hace desde VS2005?

Gracias por la respuesta anterior y Gracias por cualquier sugerencia a esta
última pregunta.

Saludos

Carlos Sancho

"Gux (MVP)" escribió en el mensaje
news:
> Coincido con lo que dijo Maxi.
>
> Si usted publica el ensamblado directamente desde su proyecto VS2005 hacia
> SQL Server, se hace la registración adecuadamente y no tiene nigún tipo de
> error.
>
> Lo está haciendo de otra manera?
>
> Gustavo Larriera, Microsoft MVP
> https://mvp.support.microsoft.com/profile/gux
> Este mensaje se proporciona tal como es, sin garantías de ninguna clase.
>
>
>
> "Carlos Sancho" wrote:
>
>> Hola a todos
>>
>> En Visual Studio 2005, bajo C#, tengo el siguiente y simple código:
>>
>> using System.IO;
>>
>> namespace LibreriasVarias
>>
>> {
>>
>> public static class funciones
>>
>> {
>>
>>
>> public static int crear_directorio(string path)
>>
>> {
>>
>> DirectoryInfo di;
>>
>> di=Directory.CreateDirectory(path);
>>
>> if (di.Exists)
>>
>> return 1;
>>
>> else
>>
>> return 0;
>>
>> }
>>
>> public static void eliminar_directorio(string path)
>>
>> {
>>
>> Directory.Delete(path, true);
>>
>> }
>>
>>
>>
>> }
>>
>> }
>>
>>
>>
>> Genero la DLL y la registro como ensamblado en una base de datos de SQL
>> server 2005.
>> Para registrar la primera funcion hago:
>>
>> CREATE FUNCTION crear_dir
>> (
>> @path nvarchar(400)
>> )
>> RETURNS INT
>> AS EXTERNAL NAME [Miensamblado].[funciones].[crear_directorio]
>>
>> pero SQL me devuelve el error: NO SE ENCUENTRA EL TIPO funciones EN EL
>> ENSAMBLADO [Miensamblado]. ¿Alguién sabe por qué?
>>
>> Muchas Gracias por cualquier sugerencia
>>
>> Saludos
>>
>>
>> Carlos Sancho
>>
>>
>>



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida