visual una studio pagina net crear como asp application aplicaciones aplicacion and c# asp.net vb.net web-site-project

c# - una - crear aplicacion web asp.net visual studio 2017



Mezclando VB.Net y C#Code en un proyecto de sitio web ASP.Net? (3)

La pregunta es bastante antigua y a menudo pregunta, tengo preguntas similares aquí, pero mi pregunta es un poco más específica.

Q1. ¿Es legal mezclar el código C # y VB.Net en el sitio web de ASP.Net? ¿Funcionará o no? Si funciona, ¿cómo se puede hacer? Cualquier muestra será buena.

Q2. Si hay alguna repercusión de mezclar el código C # y VB.Net, por favor, comparta esos también.

Tengo un proyecto web codificado en VB.Net. Estoy trabajando en un módulo del proyecto. y quiero codificar en C #. No puedo convertir todo el proyecto a C # porque no soy el único que trabaja en el proyecto. Sin embargo, el módulo que pretendo construir, quiero tenerlo en C #.

He oído que en el caso de los proyectos web, si codificamos una parte en C # y parte en VB.net, entonces hay problemas para compilar el proyecto en un dll. ¿Es eso cierto? si es así, ¿cuál es la solución?

Además, si estoy creando una biblioteca de enlaces dinámicos en .Net, ¿puedo mezclar el código C # y Vb.Net?


Desde http://msdn.microsoft.com/en-us/library/t990ks23.aspx :

Múltiples lenguajes de programación en la carpeta App_Code

Debido a que el código fuente en la carpeta App_Code se compila en un solo ensamblaje, todos los archivos en la carpeta App_Code deben estar en el mismo lenguaje de programación. Por ejemplo, la carpeta App_Code no puede incluir el código fuente tanto en Visual Basic como en C #.

Sin embargo, puede configurar su aplicación web para tratar subcarpetas de la carpeta App_Code como unidades compilables separadas. Cada carpeta puede contener el código fuente en un lenguaje de programación diferente. La configuración se especifica creando un elemento codeSubDirectories en el elemento de compilación del archivo Web.config y agregando una referencia a la subcarpeta. El siguiente ejemplo ilustra cómo configurar las subcarpetas llamadas VBCode y CSCode para compilar en ensamblajes separados:

<compilation debug="false"> <codeSubDirectories> <add directoryName="VBCode" /> <add directoryName="CSCode" /> </codeSubDirectories> </compilation>

Las referencias a las subcarpetas VBCode y CSCode no necesitan incluir ninguna información sobre qué lenguaje de programación está contenido en la subcarpeta. Al igual que con la carpeta App_Code, ASP.NET infiere el compilador para utilizar en función de los archivos en la subcarpeta.


La respuesta aquí que tiene la mayoría de los votos solo funciona para proyectos de sitios web, no un proyecto de aplicación web. Creo que muchos desarrolladores usan el término "aplicación web" ignorando genéricamente el hecho de que técnicamente es algo diferente en .NET. Microsoft dice: "Por defecto, una aplicación web se compila en función de las configuraciones de idioma en el archivo del proyecto. Se pueden hacer excepciones, pero es relativamente difícil". Por lo tanto, supongo que la única forma de hacerlo sería tener dos proyectos separados en una sola solución. (Una vez más, un proyecto de sitio web no tiene una solución o archivo de proyecto.) No estoy seguro de todos los detalles.


Parece que puedes mezclarlos dentro del mismo proyecto si haces la pieza de código que necesitas como control. Entonces, si el sitio principal está en C # y usted hace la parte VB que desea como control ascx, puede drapear y soltar eso dentro de su sitio.

No me di cuenta de que podías hacer eso, pero un miembro del equipo resolvió un trabajo que estaba haciendo.